如何单击 Excel 单元格并运行该单元格或相邻单元格中包含的命令行?

如何单击 Excel 单元格并运行该单元格或相邻单元格中包含的命令行?

我想弄清楚以下几点:

  • 我有一张 Excel 表,我每天向其中输入一些参数,然后它将这些参数连接起来以在命令行中运行应用程序。
  • 该表单总共生成 28 条命令(行),加上第一个到达应用程序文件夹的命令
  • 然后我必须复制所有这些命令并粘贴到 .bat 中,然后运行。

我希望:

  • 我可以添加一个按钮,单击后即可运行所有 29 条命令(行);
  • 单击 28 个命令单元中的任意一个即可仅运行该命令(单击与本例非常相似,但单击应该运行该单元中的内容......)

下面是我从中复制并粘贴 .bat 文件的拼接表示例

命令之间不同的参数在更右边,这里没有显示:

在此处输入图片描述

答案1

我不会把整个过程写出来,因为我不知道你的文件或结构是什么样的。你所要做的就是将 excel 表信息加载到代码中并让循环运行。它会将每一行添加到批处理文件中。你可以添加一个 shell 来自动运行它……但如果你这样做,你可能需要稍作停顿或延迟。

    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

相关内容