我一直在尝试使用批处理设置某些内容。我一直试图建立的东西,将打开一个Excel电子表格,其中包含我写完的一些作业,我需要完成。但是,当我尝试检查电子表格是否打开时,我遇到了一个小问题。我试着寻找一些解决方案来解决我的问题,但我从来没有真正理解如何使用它们,或者它们不是针对xlxs制作的。我现在有是这样的代码:如何检查Excel电子表格是否正在运行,在if命令中使用它并运行该工作表(如果它尚未运行)
@echo off
SET "stime=16:00:00.00"
SET "etime=24:00:00.00"
:start
IF %time% GEQ %stime% (
IF %time% LEQ %etime% (
START Homework.xlsx
ECHO Hey
GOTO start
)
) ELSE (
GOTO start
)
IF %time% LEQ %etime% (
IF %time% GEQ %stime% (
START Homework.xlsx
ECHO Hey
GOTO start
)
) ELSE (
GOTO start
)
您不能在这些变量中使用带有非数字字符的条件运算符。你将不得不寻找另一种方式。 – Compo
不知道你正在试图做的时间比较。批量不知道有关变量类型的任何信息。除非你比较整数,否则一切都是字符串。所以你不能比较日期或时间,除非你把它们转换成它可以比较的整数。如果您试图查看文件是否打开,您可以使用这个。 '2> nul(>> test.xls(call))&&(echo file is not open)|| (回声文件打开)' – Squashman
@Compo,Squashman比较24小时格式的时间是完全有效的,只要您在10时之前引用了字符串就有一个前导空格。比较'LEQ 24:00:00.00'是多余的,因为每个可能的时间会更短(23:59:59.99是在转向“0:00:00.00”之前的最大值) – LotPings