MS-Excel में ":" पर आधारित स्ट्रिंग को कैसे विभाजित करें?


58

मेरा एक्सेल कॉलम शब्दों से भरा है:

1.) ABC:DCF
2.) DCF:FED

मैं ":" के आधार पर प्रत्येक शब्द को विभाजित करना चाहता हूं और परिणाम को निकटवर्ती कॉलम में डाल देता हूं जैसे कि "एबीसी: डीसीएफ" सेल में "ए: 1" सेल में "एबीसी" बन जाता है "बी: 1" और सेल में "डीसीएफ"। C: 1 "और प्रत्येक कॉलम में संबंधित मान भी। यह कैसे करना है?

जवाबों:


63

डेटा टैब पर जाएं, फिर टेक्स्ट टू कॉलम के विकल्प पर जाएं। बाद में, "डिलीट किया गया" विकल्प चुनें और फिर "अन्य" का चयन करें और अपनी इच्छानुसार कोई भी परिसीमन डालें।


80

कॉलम का पाठ काम करेगा। एक अन्य विकल्प, यदि आप मूल मूल्य रखना चाहते हैं, तो सूत्र
1 का उपयोग करें: बी 1 में

=left(a1,find(":",a1)-1) 

C1 में

=mid(a1,find(":",a1)+1,len(a1))

2
मूल मूल्य को अन्य समाधान के साथ भी रखा जा सकता है (आप नए मूल्यों को संग्रहीत करने के लिए एक अलग कॉलम निर्दिष्ट कर सकते हैं), लेकिन मुझे यह समाधान बेहतर लगता है क्योंकि यह हमेशा अप-टू-डेट मूल्यों (यानी यदि आप A1 को संशोधित करते हैं, तो) B1 और C1 अपडेट करेंगे, जबकि टेक्स्ट-टू-कॉलम विकल्प नहीं है)।
मनोचिकित्सक

यह एक शानदार समाधान है
jsg

26

यदि आप VBA का उपयोग कर सकते हैं तो आप Split()फ़ंक्शन का उपयोग कर सकते हैं । यहां एक उपयोगकर्ता-परिभाषित फ़ंक्शन (यूडीएफ) है जिसे आप सेल में उपयोग कर सकते हैं। यह आपके चरित्र की पसंद पर विभाजन करता है और विभाजन सूची के n वें तत्व को वापस करता है ।

देखें कि मैं एमएस ऑफिस में VBA कैसे जोड़ूं? UDF को परिभाषित करने के तरीके के बारे में जानकारी के लिए।

Function STR_SPLIT(str, sep, n) As String
    Dim V() As String
    V = Split(str, sep)
    STR_SPLIT = V(n - 1)
End Function

इसलिए आपको दर्ज करना होगा:

=STR_SPLIT(A1, ":", 1) // for the first half
=STR_SPLIT(A1, ":", 2) // for the second half

1
बहुत अच्छा, यह पता नहीं था कि अपने स्वयं के सूत्र बनाने के लिए इतना आसान था
काउल

1
यह एक URL को उसके घटक भागों में विभाजित करने के लिए एकदम सही है।
अंडरवॉटर

7

इसे B1 में पेस्ट करें और दाएं और नीचे पंक्तियों में कॉलम भरें:

=TRIM(MID(SUBSTITUTE($A1,":",REPT(" ",999)),COLUMNS($A:A)*999-998,999))

संपादित करें: मैंने पहले सूत्र का स्थानीयकृत संस्करण पोस्ट किया था, जहां ',' को 'के साथ बदल दिया गया था।' एक्सेल के यूएस-संस्करण में यह काम नहीं करता है:

=TRIM(MID(SUBSTITUTE($A1;":";REPT(" ";999));COLUMNS($A:A)*999-998;999))


1
सुपर उपयोगकर्ता में आपका स्वागत है। क्या आप यह बताने के लिए अपने उत्तर में कुछ वाक्य जोड़ सकते हैं कि यह क्या करता है और कैसे काम करता है? जो इसके शैक्षिक मूल्य को बढ़ाएगा। धन्यवाद।
फिक्सर 1234

हां बिल्कुल। यह वही करता है जो डेटा टैब से पाठ को कॉलम करता है, सिवाय इसके कि यह सूत्र के साथ नहीं है। आप ":" को अलग-अलग परिसीमन द्वारा प्रतिस्थापित कर सकते हैं या अन्य सेल से एक सीमांकक का संदर्भ ले सकते हैं।
हरदी उटमा

एक्सेल का कहना है कि जब आप सेल में पेस्ट करते हैं तो यह एक वैध फॉर्मूला नहीं होता है। कृपया जाँच करें और अपडेट करें।
थिलिना आर।

हाय थिलिना आर! अधिसूचित करने के लिए धन्यवाद। मैंने एक्सेल के यूएस-संस्करण के लिए समायोजन किया। कृपया मुझे बताएं कि क्या आपको इससे कोई परेशानी है या यदि कुछ स्पष्ट नहीं है।
हरदी उतमा

बहुत अच्छा। अब तक का एकमात्र उत्तर जो आपको अपने स्वयं के फ़ंक्शन को बनाने के बिना, जितने चाहें उतने सीमांकक से निपटने की अनुमति देता है।
CWILson
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.