我想制作报告(目前工作正常但有1个例外),需要添加所有 .CSV 文件名进行报告,我坚持使用它。
目前我所做的就是:
我有什么:
call n:\xx\variables.bat %1 %2 %3 %4
cscript.exe "%vbs%" "%Sample1%" "Sample2" "*.csv"
在“* .csv”的位中我需要有CSV文件名,所以我可以使用这个变量将它放到Excel中使用VBS。
关于我在寻找什么的视觉解释:
----------------------------------------------------
- -
- -
- HERE MY REPORT -
- -
----------------------------------------------------
- CSV FilesPath/FileName1
- CSV FilesPath/FileName2
- CSV FilesPath/FileName3
- CSV FilesPath/FileName4
CSV:
EXTRA:
我找到了这个话题: How to read from a text file using VBScript?
如果创建一个包含所有必要文件名的列表,那么它将是一种获取此列表并在VBS中用作变量的方法??? ...
精确解决方案:(AVB的改编版本,但适用于多个文件)
addCell = 6
for each myFile in fso.GetFolder(var1).Files
if fso.GetExtensionName(myFile) = "csv" then
ws.Cells(addCell,1).Value = myFile.Path ' or do anything else
addCell=addCell+1
end if
next
答案 0 :(得分:1)
以下列出文件夹中所有csv文件的方法:
dim FSO, myFile
const myFolder = "your path here"
set FSO = CreateObject("Scripting.FilesystemObject")
for each myFile in FSO.GetFolder(myFolder).Files
if FSO.GetExtensionName(myFile) = "csv" then
MsgBox(myFile.Path) ' or do anything else
end if
next
这个代码,几乎没有变化也适用于VBA(如果你使用它,那么避免后期绑定)
答案 1 :(得分:0)
不确定我理解你的需要,所以这里有一些猜测:
call n:\xx\variables.bat %1 %2 %3 %4
cscript.exe "%vbs%" "%Sample1%" "Sample2" %*
%*
表示获取所有参数。