2013-07-25 5 views
10

मेरे पास =((E9-E8)/E8) जैसा वर्कशीट पर मौजूद सभी जगहें हैं। मैं इस नए सूत्र, (EXP((LN(E9/E8)/14.32))-1) में जाने के लिए पहले दो मानों का उपयोग करना चाहता हूं।सरल एक्सेल सूत्रों के लिए ढूंढें और प्रतिस्थापित करें

मैं उन सभी को नए फॉर्मूला में कैसे बदल सकता हूं, एक में गिरावट आई है?

+0

* सभी जगह पर * - तो कोई भी कॉलम या पंक्ति नहीं है? लगभग सभी * कितने * हैं? – pnuts

+0

पूरे स्थान पर इसका मतलब है कि तीन अलग-अलग कॉलम थे जिसमें सूत्र 31 बार के लिए होगा। मैं आर 1 सी 1 में स्विचिंग समाप्त कर दिया क्योंकि संरचना हर मामले में समान थी। मेरा जवाब देखें आर सी प्रारूप करने के लिए – Tomulent

+0

स्विचिंग एक बड़े पैमाने पर इस बात के लिए जाने का रास्ता है, लेकिन के लिए यह नहीं लायक (जैसा कि मैंने संदिग्ध) एक छोटे पैमाने है। आपको याद है, मैं 31 छोटे पैमाने पर विचार करता हूं! एक्सा के लिए देखते हुए, अन्य उत्तरों को पूछें, मुझे लगता है कि यह एक प्रश्न है जो एक अच्छे स्कोर के योग्य है, इसलिए मेरा +1 - हालांकि यह केवल 0 पर लौटाता है, मुझे डर है। – pnuts

उत्तर

12

यदि सूत्र समान हैं तो आप Match entire cell contents चेक और Look in: Formulas के साथ ढूँढें और बदलें का उपयोग कर सकते हैं। सीमा का चयन करें, ढूँढें और बदलें में जाएं, अपनी प्रविष्टियां बनाएं और 'सभी को बदलें।

enter image description here

या आप मतलब यह एक ही फार्म के साथ कई सूत्र, लेकिन अलग-अलग कक्ष संदर्भ देखते हैं कि क्या ज़रूरत है? यदि ऐसा है, तो एक नियमित अभिव्यक्ति मैच और प्रतिस्थापित करने का एक तरीका है। नियमित अभिव्यक्ति Excel (या VBA) में नहीं बनाई गई हैं, लेकिन माइक्रोसॉफ्ट के वीबीस्क्रिप्ट नियमित अभिव्यक्ति पुस्तकालय के माध्यम से पहुंचा जा सकता है।

निम्न कार्य आवश्यक मिलान प्रदान करता है और क्षमता को प्रतिस्थापित करता है। इसका उपयोग एक सबराउटिन में किया जा सकता है जो निर्दिष्ट सीमा में सूत्रों के साथ कोशिकाओं की पहचान करेगा और सूत्रों को फ़ंक्शन में इनपुट के रूप में उपयोग करेगा। फ़ॉर्मूला स्ट्रिंग्स के लिए जो आप जिस पैटर्न को ढूंढ रहे हैं उससे मेल खाते हैं, फ़ंक्शन प्रतिस्थापन फॉर्मूला का उत्पादन करेगा, जिसे वर्कशीट पर वापस लिखा जा सकता है।

Function RegexFormulaReplace(formula As String) 
    Dim regex As New RegExp 
    regex.Pattern = "=\(\(([A-Z]+\d+)-([A-Z]+\d+)\)/([A-Z]+\d+)\)" 
' Test if a match is found 
    If regex.Test(formula) = True Then 
     RegexFormulaReplace = regex.Replace(formula, "=(EXP((LN($1/$2)/14.32))-1") 
    Else 
     RegexFormulaReplace = CVErr(xlErrValue) 
    End If 
    Set regex = Nothing 
End Function 

समारोह के लिए आदेश काम करने के लिए, आप Microsoft VBScript रेगुलर एक्सप्रेशन 5.5 पुस्तकालय के लिए एक संदर्भ जोड़ने के लिए की आवश्यकता होगी। मुख्य रिबन के Developer टैब से, मुख्य टूलबार से VBA और फिर References का चयन करें। पुस्तकालय के संदर्भ को खोजने के लिए नीचे स्क्रॉल करें और इसके बगल में स्थित बॉक्स को चेक करें।

+0

हां एक ही रूप के साथ कई सूत्र हैं लेकिन विभिन्न सेल संदर्भ हैं। – Tomulent

1

खोज का उपयोग करें और ctrl + h के माध्यम से सुलभ आदेश को प्रतिस्थापित करें, सुनिश्चित करें कि आप कक्षों के कार्यों के माध्यम से खोज रहे हैं। फिर आप फार्मूला के किसी भी विचलन को समायोजित करने के लिए वाइल्डकार्ड कर सकते हैं। * # वाइल्डकार्ड के लिए,? charcter वाइल्डकार्ड के लिए, और ~? या ~ * खोजने के लिए? या *।

+0

मैं इसके लिए नया हूं इसलिए मुझे पूरा यकीन नहीं है कि यह कैसे काम करता है। मैं वाइल्डकार्ड का उपयोग करके अपने प्रश्न में रखे सूत्रों का प्रतिनिधित्व कैसे करूं? दोबारा, मुझे 30 सूत्र पसंद हैं जो कि सभी संदर्भों के साथ दिखते हैं जिन्हें मैं दूसरे फॉर्मूला की तरह दिखाना चाहता हूं। – Tomulent

+0

वाइल्डकार्ड के सभी सेल संदर्भों को बदलना निम्न जैसा दिखता है; खोजें: = (?? (* - *)/*) बदलें: = (? ऍक्स्प ((एल.एन. (*/*)/14,32)) - 1) आप और अधिक वाइल्डकार्ड की आवश्यकता होती है मुझे आशा है कि यह काम करेगा आपके लिए एक अच्छा उदाहरण के रूप में। – Mason

+0

दुर्भाग्य से यह काम नहीं किया। सौभाग्य से, मैं इस मुद्दे को एक अलग तरीके से हल करने में सक्षम था। यदि आप उत्सुक हैं तो मेरा जवाब देखें – Tomulent

6

यह पता चला है कि समाधान आर 1 सी 1 सेल संदर्भ में स्विच करना था। मेरी वर्कशीट को इस तरह से संरचित किया गया था कि प्रत्येक सूत्र में एक ही संरचना के समान संदर्भ हों। लक हालांकि, वे हमेशा एक ही तरह से

=((E9-E8)/E8) 

बन

=((R[-1]C-R[-2]C)/R[-2]C) 

और

(EXP((LN(E9/E8)/14.32))-1) 

=(EXP((LN(R[-1]C/R[-2]C)/14.32))-1) 

बन R1C1 संदर्भ में तैनात किया गया है, हर सूत्र तो समान था खोज और प्रतिनिधि फीता के लिए कोई वाइल्डकार्ड की आवश्यकता नहीं है। उत्तर देने वालों के लिए धन्यवाद!

1

जिस तरह से मैं इसे आम तौर पर संभालता हूं वह सॉफ़्टवेयर के दूसरे भाग के साथ होता है। विंडोज़ के लिए मैं ओएस एक्स के लिए नोटपैड ++ का उपयोग करता हूं, मैं सब्लिमे टेक्स्ट 2 का उपयोग करता हूं।

  1. Excel में, हिट नियंत्रण + ~ (ओएस एक्स)
  2. एक्सेल (मैं आमतौर पर यह दो बार करते हैं) संपूर्ण शीट को चुनें करने के लिए अपने सूत्र संस्करण
  3. सीएमडी + A के लिए सभी मूल्यों में परिवर्तित कर देंगे
  4. कॉपी सभी सामग्री और ++/उदात्त पाठ 2
  5. खोजें/यहाँ
  6. कॉपी सामग्री अपने सूत्र सामग्री बदलें और एक्सेल में वापस पेस्ट, सेल आकार मतभेदों के बारे में किसी भी मुद्दे की पुष्टि नोटपैड में पेस्ट
  7. नियंत्रण मोड पर वापस स्विच करने के लिए नियंत्रण + ~
संबंधित मुद्दे