cố gắng gọi một tập lệnh python trên Vba và tôi là newb. Tôi đã thử chuyển đổi kịch bản chính thành exe sử dụng py2exe và sau đó gọi nó từ VBA (shell) nhưng kịch bản chính gọi các kịch bản khác do đó nó trở nên phức tạp và tôi sai nó lên (exe của tôi không hoạt động). Bên cạnh đó, kịch bản chính là một tập tin lớn và tôi không muốn sửa đổi nó rất nhiều.Làm thế nào để gọi kịch bản python trên excel vba?
Tóm tắt, có cách nào để gọi tập lệnh chính từ vb excel không, mà không chuyển đổi tập lệnh thành tệp exe.
Cho đến nay, tôi đã cố gắng:
RetVal = Shell("C:\python27\python.exe " & "import " & "C:\\" & "MainScriptFile")
Nó bắt đầu python.exe nhưng không có gì khác. Sau đó, tôi đã thử:
RetVal = Shell("C:\Windows\System32\cmd.exe " & "python " & "C:\\Python27\\hello.py")
Bắt đầu nhắc lệnh nhưng thậm chí không bắt đầu trăn.
P.S. Tôi đã kiểm tra tất cả các câu hỏi liên quan trong diễn đàn, họ không giải quyết vấn đề của tôi.
Tôi đã cố gắng này. Nó bắt đầu trình thông dịch python nhưng không làm gì khác. Tôi tin rằng "shell" chỉ chạy các tệp exe và không cho phép tôi chạy tập lệnh của mình. –
Xin lỗi, tôi không biết mình đã làm gì sai trước đây. Nó hoạt động ngay bây giờ. Cảm ơn rất nhiều! Tôi sử dụng: RetVal = Shell ("C: \ python27 \ python.exe C: \ Python27 \ CallOptimizer.py") –
@EgeOzlem bạn có thể vui lòng chia sẻ một mẫu của kịch bản python của bạn, rằng bạn đã thực hiện từ VBA? và những gì nó đã quay trở lại cuộc gọi VBA? – ggupta