我在Sub getDailyCollMV(ByRef Item As Outlook.MailItem)
Dim r As Object 'As Word.Range
Dim doc As Object 'As Word.Document
Dim xlApp As Object, wkb As Object
Set xlApp = CreateObject("Excel.Application")
xlApp.DisplayAlerts = False
Set wkb = xlApp.Workbooks.Add
xlApp.Visible = False
xlApp.DisplayAlerts = False
Dim wks As Object
Set wks = wkb.Sheets(1)
For Each ItemVal In Application.ActiveExplorer.Item
Set doc = ItemVal.GetInspector.WordEditor
For x = 1 To doc.tables.Count
Set r = doc.tables(x)
r.Range.Copy
wks.Paste
wks.Cells(wks.Rows.Count, 1).End(3).Offset(1).Select
Next
Next
中有一个包含一些文件的文件夹,现在我需要从cmd运行每个文件,例如:
%temp%\test\
此代码不起作用的文件是.exe,jpg和其他文件...
答案 0 :(得分:1)
正如@jwdonahue指出的那样,您没有引用变量。
如所写,您指的是变量I
,该变量不存在。
此外,如果您从命令行运行,则要使用单个%
,而不要使用两个%%
。
请尝试:
for /r %f in (%temp%\test\*) do (
start "'%~nxf'"
)
部分:%~nxf
的意思是,“从for循环中引用变量%f
,但是用~n
和~x
处理它以获得原始文件名和扩展名。