Я пытаюсь выяснить следующее:

  • У меня есть лист Excel, в который я ежедневно добавляю некоторые параметры, и он объединяет их для запуска приложения в командной строке.
  • Лист генерирует в общей сложности 28 команд (строк), плюс первая, которая достигает папки приложения
  • Затем я должен скопировать все эти команды и вставить в .bat, и запустить.

Хотелось бы:

  • Я мог бы добавить кнопку, которая запускает все 29 команд (строк) одним щелчком мыши;
  • Щелкните в любой из 28 ячеек команд, чтобы выполнить только эту команду (щелчок во многом похож на этот пример, но щелчок должен выполнить то, что находится в этой ячейке ...)

Вот пример составного листа, откуда я копирую и вставляю в файл .bat

Параметры, которые отличаются между командами, находятся справа, здесь они не показаны:

1 ответ1

0

Я не собираюсь писать все это, потому что я не знаю, как выглядят ваши файлы или структура. Все, что вам нужно сделать, это загрузить информацию о листе Excel в код и запустить цикл. Это добавит каждую строку в командный файл. Вы можете добавить оболочку для автоматического запуска ... но если вы это сделаете, вам может потребоваться небольшая пауза или задержка.

    Sub Blah()


    Dim fso As Scripting.FileSystemObject
    Dim F As File
    Dim F2 As TextStream
    Dim BatchFile As String
    'Also, need to load in excel stuff up here.

    BatchFile = ("C:\Users\" & Environ$("Username") & "\Documents\FileName.bat")
    Set F2 = fso.CreateTextFile("C:\Users\" & Environ$("Username") & "\Documents\FileName.bat")
    RowNum = 1
    On Error GoTo Errs:
    S = ""
    Do Until Worksheet.Cells(RowNum, 1).value = ""

    S = S & workshee.Cells(RowNum, 1) & Chr(13) & Chr(10)

    RowNum = RowNum + 1
    Loop
Errs:

    F2.Write S

    End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .