Итак, я создал файл .exe (tlsolver.exe) для запуска с использованием VBA (TLSolver.xlsm). Когда я запускаю .exe, он запускает некоторые вычисления, выплевывает файл csv, а затем я использую VBA для копирования этих данных на лист excel.Запуск .exe с использованием VBA
Это код VBA Я использую:
Public Sub StartExeWithArgument()
Dim strProgramName As String
ActiveWorkbook.Save
strProgramName = "C:\Users\My.Name\Desktop\Python\Tagless\tlsolver.exe"
Call Shell("""" & strProgramName & """", vbNormalFocus)
End Sub
При запуске макроса, то выскочит окно консоли, как должно, а затем быстро закрывается. Мне удалось увидеть эту ошибку перед закрытием:
IOError: [Errno 2] No such file or directory: 'TLSolver.xlsm'
Я знаю, что .exe отлично работает, когда я двойной щелчок мышью на файле регулярно, поэтому я склонен думать, что я Мессинг что-то глупое в VBA ,
Любая помощь оценена!
Редактирование: я знаю, что sub обозначается как StartExeWithArgument, но аргумента не требуется, просто нажмите и запустите.
Быстрый вопрос ... Почему вы получаете сообщение об ошибке 'Нет такого файла или каталога:«TLSolver.xlsm'' почему '.xlsm '? Разве это не должно быть .exe? –
Давайте продолжим обсуждение в чате (http://chat.stackoverflow.com/rooms/65643/discussion-between-ploo-and-siddharth-rout). – ploo
Обсуждение чата: exe запускается правильно с VBA. Exe был создан с использованием python и не может читать файл .xlsm. –