【发布时间】:2014-01-15 05:44:25
【问题描述】:
我想知道是否可以创建一个 vbs 文件来突出显示 Excel 工作簿中的单元格。
我有一个包含多个计算机主机名的 excel 工作表,我还批量运行一个脚本,对文本文档中的每个主机名进行 ping 操作。如果 ping 结果成功,我想调用 vbs 文件以突出显示 excel 中的单元格。这可能吗?
谢谢!
迪米特里
【问题讨论】:
-
是的,一切皆有可能(几乎!)。
-
我不只是用批处理 ping 计算机,如果它回复 ping 请求,我也会用批处理修补计算机。话虽如此,我想按照你的方式做,比尔,我将不得不更改我的批处理文件并将计算机名称传递给批处理以执行修补过程。我真的只是想要一种通过执行 vb 脚本来突出显示已完成的方法。希望这能回答一些问题。
-
好的,使用我提供的任何一种方法,您也可以在 Excel 中进行修补。也就是说,如果您想继续使用批处理文件,那么您仍然可以使用我的代码,您只需将其迁移到 VBScript 并从脚本中创建一个 Excel 对象即可使用它。然后您可以使用此处找到的任何方法批量调用 VBS:stackoverflow.com/questions/11899730/…
-
抱歉,我需要进一步澄清您遇到的问题的具体部分。它是从批处理中调用 VBS 吗?是否打开 Excel 并在 VBScript 中修改工作表?它是突出显示单元格的代码吗?我在回答中要说的是,您会发现 ping 和修补所有主机名、存储该过程的结果、然后返回并根据这些存储的结果突出显示工作表而不是尝试管道您在批处理中的任何时间点处理的任何主机名到 VBS 脚本并仅更新该单元格。
-
我只有批处理文件,以前从未在 excel 中使用过 VB。我想让批处理调用 excel 文件并在成功时突出显示计算机名称列的原因是因为我们有数百个计算机名称,如果脚本运行,我最终会得到数百个成功的补丁。现在这一切都很好,花花公子,但是手动返回并突出显示成功的组合是一个手痛。我认为 excel 执行脚本不起作用的另一个原因是因为脚本需要以管理员身份而不是用户身份执行,因此可能会导致问题。