से .bat फ़ाइल निष्पादित करें मुझे अपने एक्सेल वीबीए मैक्रो के साथ कोई समस्या है। मुझे बैच फ़ाइल निष्पादित करने की आवश्यकता है जो एक्सेल कार्यपुस्तिका के समान फ़ोल्डर में है। कोड कभी-कभी अच्छी तरह से काम करता है। मुझे नहीं पता कि त्रुटि क्या हो रही है। यहां कोड है:एक्सेल वीबीए मैक्रो
Sub writebatch()
Sheets("code").Select
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs FileName:=ThisWorkbook.path & "\code.bat",
FileFormat:=xlTextPrinter, CreateBackup:=False
Application.DisplayAlerts = True
ThisWorkbook.Saved = True
Shell "cmd.exe /k cd " & ThisWorkbook.path & "&&code.bat"
Application.Quit
End Sub
यह बैच फ़ाइल लिखता है, लेकिन फिर इसे निष्पादित नहीं करता है। केवल एक बार जब मुझे कमांड विंडो बंद नहीं हुई और उसने कहा कि code.bat फ़ाइल नहीं मिल सका। तो बदले गए कमांड ने काम किया। क्या cmd.exe को चलाने के लिए संभव है और code.bat को बदले बिना सापेक्ष पथ के साथ चलाएं?
यकीन है कि मुझे समझ में नहीं एक स्ट्रिंग में चरित्र कोड रूपांतरण समारोह Chr (34), 34 उद्धरण के लिए ASCII मूल्य का उपयोग किया जा रहा है।" आपके पास एक एक्सेल वर्कबुक है जिसे आप बैच फ़ाइल के रूप में सहेज रहे हैं और फिर आप "एक्सेल" फ़ाइल को .bat के रूप में चलाने की कोशिश कर रहे हैं? – InContext
क्या स्ट्रिंग "&&" और "code.bat" में कुछ विशेष मतलब है, या यह वास्तव में फ़ाइल नाम का हिस्सा है? – RBarryYoung