2013-06-06 4 views
6

मेरे पास एक दिलचस्प दुविधा है और यह सोच रहा था कि क्या कोई यह जान सकता है कि यह संभव है या नहीं। मैं जावा का उपयोग कर एक .csv फ़ाइल बना रहा हूं और प्रत्येक पंक्ति के लिए अल्पविराम से अलग प्रविष्टियों में से एक के लिए एक यूआरएल है।एक्सेल सेल स्वरूपण विशेष केस

उदाहरण:

ITEM1, ITEM2, ITEM3 http://myurl.com

मूल रूप से जब मैं Excel में csv फ़ाइल भरी हुई है, यह सिर्फ यूआरएल के लिए पाठ भरी हुई है और यह क्लिक करने योग्य बनाने नहीं किया गया।

= हाइपरलिंक ("http://myurl.com")

जब एक्सेल लोड, लिंक क्लिक करने योग्य है और माउस सूचक परिवर्तन करने के लिए: मैं बस फ़ाइल बनाते समय इस तार के साथ प्रवेश आसपास के द्वारा इस का समाधान करने में सक्षम था हाथ आइकन एकमात्र समस्या यह है कि जब आप इसे देख रहे हों और सेल को घुमाएंगे, तो यह सिर्फ सफेद पृष्ठभूमि पर काले रंग की तरह दिखता है। आम तौर पर जब आप एक लिंक देखते हैं, तो यह एक रेखांकन के साथ नीला है जिसमें यह संकेत मिलता है कि यह क्लिक करने योग्य है। मैं इस दृश्य कतार को देखना चाहता हूं, लेकिन मुझे यकीन नहीं है कि मेरे फ़ंक्शन को किसी प्रकार के सेल स्वरूपण फ़ंक्शन या किसी चीज़ के साथ संशोधित करके इसे करने का कोई तरीका है या नहीं।

और हां, मुझे पता है कि सशर्त स्वरूपण क्या है और इसे Excel में किसी सेल पर कैसे लागू करें। हालांकि, यह मेरे लिए काम नहीं करेगा, क्योंकि फाइल लोड होने पर मुझे बस काम करने की ज़रूरत है। जब उपयोगकर्ता इसे डाउनलोड करता है तो फाइल हमेशा नई बनाई जाती है, क्योंकि सामग्री हमेशा बदलती रहती है। किसी भी विचार की बहुत प्रशंसा की जाएगी।

+0

सीएसवी के बजाय किसी अन्य प्रारूप में फ़ाइल बना रहा है (जैसे एचटीएमएल या एक्सएमएल)? –

+0

इस मामले में नहीं। फ़ाइल डाउनलोड करने वाले लोगों को इसे सीएसवी प्रारूप में आवश्यकता होगी ताकि वे Excel सहित कई प्रोग्रामों में आयात कर सकें। – usherjer

+0

आप एक्सेल में एचटीएमएल या एक्सएमएल आयात कर सकते हैं। क्या आप कह रहे हैं कि ऐसे अन्य प्रोग्राम हैं जिन्हें आपके उपयोगकर्ताओं को डेटा आयात करने की आवश्यकता है, लेकिन ये HTML या XML का समर्थन नहीं करते हैं? –

उत्तर

1

कारण है कि एक .csv फ़ाइल को डबल-क्लिक करके हाइपरलिंक्स दर्ज किया गया है "ठंडा" (क्लिक करने योग्य नहीं) यह है कि यूआई का हिस्सा जो टाइप किए गए टेक्स्ट से "हॉट" हाइपरलिंक बना देता है, पारित किया गया है। .csv = हाइपरलिंक बजाय कच्चे यूआरएल() फ़ंक्शन है, तो वे चलाकर गर्म किया जा सकता है निम्नलिखित:

Sub HyperIgniter() 
    Dim r As Range 
    For Each r In ActiveSheet.UsedRange 
     If Left(r.Text, 4) = "http" Then 
      r.Select 
      Application.SendKeys "{F2}" 
      Application.SendKeys "{ENTER}" 
      DoEvents 
     End If 
    Next r 
End Sub 

इस का हाइपरलिंक से प्रत्येक फिर से टाइपिंग, इस प्रकार उन्हें बनाने 'हॉट बराबर है "और उन्हें सामान्य प्रारूप दे रहा है।

+2

समस्या यह है कि वह सीएसवी भेज रहा है ताकि प्राप्तकर्ता नहीं चल रहे हों या यहां तक ​​कि कोई मैक्रोज़ प्राप्त नहीं कर पाएंगे। –

1

आप jXLS लाइब्रेरी का उपयोग करके टेम्पलेट एक्सेल फाइलें बना सकते हैं। यह उपयोग करना वास्तव में आसान है। Sample

1

यह पूरी तरह से किया जा सकता है लेकिन यह आपके अपेक्षा से अधिक जटिल हो सकता है।

पहले, आपको एक नया कस्टम नंबर प्रारूप बनाने के लिए इस पोस्ट में मिले चरणों का पालन करना होगा, जिसका उपयोग आप सभी नई कार्यपुस्तिकाओं में कर सकते हैं और आपके ग्राहक भी होंगे।

Adding cell format options to Custom list

मैं सूची बोली होगा, लेकिन मैं नहीं बल्कि HansV के महान समाधान के लिए किसी भी क्रेडिट नहीं काफ़ी होगा।

विकल्प है कि आप जोड़ना होगा "[नीले] सामान्य"

अब, अपनी CSV फ़ाइल नीचे दिए गए उदाहरण की तरह स्ट्रिंग बचत जाना चाहिए चाहते हैं: "= पाठ (हाइपरलिंक (" "http://www.google.com" "), "" [नीला] सामान्य "") "

तो, अब आप नया प्रारूप लागू कर रहे हैं (जो फ़ॉन्ट रंग को नियंत्रित करता है)। बस अपने यूआरएल के साथ google.com को प्रतिस्थापित करें।आप देखेंगे कि मुश्किल स्वरूपण सीएसवी बलों के उत्पाद के रूप में कई उद्धरण हैं ताकि यह आवश्यक कोट्स (टेक्स्ट फ़ंक्शन के लिए) को दो कोशिकाओं में विभाजित करने के साथ-साथ आवश्यक उद्धरण जोड़ देगा।

संबंधित मुद्दे