【发布时间】:2021-12-05 15:54:41
【问题描述】:
我需要从列中读取值并将单个值作为参数传递给函数。 这是我的代码:
Sub Function3()
Dim FileFull As String
Dim wb As Workbook
Worksheets("Foglio3").Activate
FileFull = Dir(Range("A1").Value)
Do While FileFull <> ""
Set wb = Workbooks.Open(FileFull)
Delete_Sheet wb
InsertCol wb
wb.Close SaveChanges:=True
Filename = Dir()
Loop
End Sub
其他函数将使用存储在 FileFull 变量中的值。 Foglio3 上的值是:
C:\scriptest\FolderA\2021\3-Corrs\fileA_2021.xlsm
C:\scriptest\FolderB\2021\3-Corrs\fileB_2021.xlsm
C:\scriptest\FolderC\2021\3-Corrs\fileC_2021.xlsm
C:\scriptest\FolderD\2021\3-Corrs\fileD_2021.xlsm
C:\scriptest\FolderE\2021\3-Corrs\fileE_2021.xlsm
我有两个问题。如何循环进入从 A1 到 A300 的 Foglio3 单元格范围并将这些值用作其他函数的参数? 谢谢!
【问题讨论】:
-
如果您的其他函数有
wb作为参数,那么FileFull将是wb.FullName -
循环遍历一个范围并传递值 ->
For Each Cell in MyRange.Cells: MyFunction(Cell.Value): Next其中 Cell 定义为Dim Cell As Range。对于 A1 到 A300 ->Set MyRange = Range("A1:A300")在循环之前。
标签: excel vba loops parameters