使用VB脚本,如何自动创build包含特定文件夹中的文件列表的Excel文件?

我已经search了网页,但找不到具体的答案。

我所知道的:(1)S:\ Rally中的文件列表的txt文件可以在S:\ Rally提示符下从cmd创build:

dir/b>H:\Home\list1.txt 

(2)可以通过将以下内容保存为.vbs来打开新的Excel文件:

 Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True objExcel.Workbooks.Add 

然后运行它在cmd(说.vbs文件保存为C:\ Scripts \ openex1.vbs):

 cscript C:\Scripts\openex1.vbs 

我不知道的是(1)如何把它们放在一起,以便用S:\ Rally生成的文件列表创buildExcel文件(而不是txt文件);(2)如何自动执行此操作,最好在每个月底运行,但是我可以双击某个东西或者进入cmd并在每个月底自己运行。

csv文件是否适合您的目的? 要获得S:\ Rally中的文件列表,您可以将一个batch file保存在S:\ Rally中,其中包含一行:

 dir /b > myCsv.csv 

这将在Excel中打开。

(1)如何把它们放在一起,从而创build一个Excel文件(而不是一个txt文件),从S:\ Rally

这是一个将标准input复制到空白Excel文件并将第一个参数保存为文件名的脚本。

 Set xl = CreateObject("Excel.Application") xl.Visible = True Set wb = xl.Workbooks.Add xldata = Split(WScript.StdIn.ReadAll, vbCrLf) Set a1 = xl.Evaluate("Sheet1!A1") For i = 0 To UBound(xldata) a1.Offset(i).Value = xldata(i) Next wb.SaveAs WScript.Arguments(0) xl.Quit 

所以要运行它,将其保存为xldump.vbs并使用此命令行,将dir /b的输出xldump.vbs到脚本中。

 dir /b S:\Rally | cscript xldump.vbs file-list.xlsx 

(2)如何实现自动化,最好在每个月底运行,但是我可以双击某个东西,或者在每个月底自行运行cmd。

将以前的命令放在batch file中,并使用“pipe理工具”控制面板中的“任务计划程序”来运行它。