VBA中的循环通过列
我想循环浏览excel文件中的列,而不仅仅是列a,但我没有成功。你能帮我吗?VBA中的循环通过列,vba,excel,Vba,Excel,我想循环浏览excel文件中的列,而不仅仅是列a,但我没有成功。你能帮我吗? 我被阻塞的是7行(文件路径)。如果我更改了icol的A列,它将不起作用 Set workboo = Workbooks.OpeN("C:\Users\Desktop\list_files.xlsx") Set worksh = workboo.Worksheets("List_File") For j = 1 To 10 icol = 2 * j - 1 numRows = worksh.Cells(A
我被阻塞的是7行(文件路径)。如果我更改了icol的A列,它将不起作用
Set workboo = Workbooks.OpeN("C:\Users\Desktop\list_files.xlsx")
Set worksh = workboo.Worksheets("List_File")
For j = 1 To 10
icol = 2 * j - 1
numRows = worksh.Cells(Application.Rows.Count, icol).End(xlUp).Row
For i = 2 To numRows
Filepath = worksh.Range("A" & i).Value 'i changed column A for icol but it doesn t work
fso.CopyFile Filepath, Destination, True
Next
要在列中循环,使用
单元格将更容易:
Filepath = worksh.Cells(i, icol).Value
这是:
numRows = worksh.Cells(Application.Rows.Count, icol).End(xlUp).Row
应该是
numRows = worksh.Cells(worksh.Rows.Count, icol).End(xlUp).Row
要在列中循环,使用单元格将更容易:
Filepath = worksh.Cells(i, icol).Value
这是:
numRows = worksh.Cells(Application.Rows.Count, icol).End(xlUp).Row
应该是
numRows = worksh.Cells(worksh.Rows.Count, icol).End(xlUp).Row
将~Application.Rows改为worksh.Rows~将~Application.Rows改为worksh.Rows~事实上,你是对的。但是我改变了,在“自动化错误”一行中总是有一个问题。我评论说,~Application.Rows~将更改为~worksh.Rows~并且您也认可了它。但在测试这一行时,即使使用~Application.Rows~我也能得到正确的numrow,而且这一行没有抛出任何错误。在这个问题上寻求您的指导。@JeanLo:您在numRows=…
上得到一个自动化错误?斯特拉安格。。。我对此没有解释,我甚至不明白这里怎么会有错误。。。这是一个更大计划的一部分吗?事实上,你是对的。但是我改变了,在“自动化错误”一行中总是有一个问题。我评论说,~Application.Rows~将更改为~worksh.Rows~并且您也认可了它。但在测试这一行时,即使使用~Application.Rows~我也能得到正确的numrow,而且这一行没有抛出任何错误。在这个问题上寻求您的指导。@JeanLo:您在numRows=…
上得到一个自动化错误?斯特拉安格。。。我对此没有解释,我甚至不明白这里怎么会有错误。。。这是一个更大计划的一部分吗?