मैंने आज एक बहुत ही रोचक बग खोजा है। अगर यह बग है।सूत्रों में पाठ को प्रतिस्थापित करते समय बग मिला
क्या आप कृपया पुष्टि कर सकते हैं कि आप इसे दोहराना चाहते हैं या नहीं? यदि यह एक बग है और इसकी सूचना नहीं मिली है तो मैं इसे इस तरह दर्ज कर सकता हूं। मैं भी ठीक हूं अगर एक्सेल-एमवीपी में से कोई भी इसे एक बग के रूप में दर्ज करना चाहता है।
मान लें sheet1
सेल A1
में, आपके पास एक फॉर्मूला = $B$2+ $B$3
है। अब सुनिश्चित करें कि आपका सेल चुना गया है। अब इस कोड को मॉड्यूल में पेस्ट करें।
Sub Sample()
Dim r As Range, sPre As String, sAft As String
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
sPre = "$B$2": sAft = "$C$3"
On Error Resume Next
Set r = ws.Range("A1:A2").SpecialCells(xlCellTypeFormulas)
On Error GoTo 0
If Not r Is Nothing Then r.Replace what:=sPre, _
replacement:=sAft, _
lookat:=xlPart, _
MatchCase:=False
End Sub
आदर्श रूप में कोड काम किया जाना चाहिए था और = $B$2+ $B$3
सूत्र बार में = $C$3+ $B$3
करने के लिए बदल जाना चाहिए था लेकिन यह नहीं करता है। यह केवल तभी काम करेगा जब आप इसके माध्यम से कदम उठाते हैं या यदि आप अगली पंक्ति
अब एक बात करते हैं तो आप कार्य करेंगे। A1
या A2
के अलावा किसी भी सेल का चयन करें। अब यदि आप कोड चलाते हैं, तो कोड अपेक्षित काम करता है।
पहले मैंने सोचा कि मेरा एक्सेल पागल हो गया है इसलिए मैंने इसे बंद कर दिया और फिर से शुरू किया लेकिन मैं उपरोक्त को Excel 2010
में कई बार पुन: उत्पन्न करने में सक्षम था।
तब मैंने सोचा कि यह .SpecialCells
समस्या है लेकिन उपर्युक्त व्यवहार इस कोड के साथ भी देखा जा सकता है।
Sub Sample()
Dim r As Range, sPre As String, sAft As String
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
sPre = "$B$2": sAft = "$C$3"
Set r = ws.Range("A1:A2")
r.Replace what:=sPre, _
replacement:=sAft, _
lookat:=xlPart, _
MatchCase:=False
End Sub
क्या आप इसे दोहराने में सक्षम हैं?
मैं Excel 2013 में यह दोहराने के लिए कर रहा था नहीं है –
धन्यवाद @PradeepKumar :) –
क्या होता है यदि आप तुरंत मैक्रो के बाद 'एफ 2, एंटर' का उपयोग करते हैं और फॉर्मूला बार अपडेट होने से पहले? – Jeeped