我正在写一个宏来检查一个值是否为真,如果是这样,则需要该行的第一个单元格并存储它。例如:如何在VBA中抵消2个范围的单元格?
|191|c:users\public\test.dbf |True | |192|c:users\public\test2.dbf |False| |193|c:users\public\test2.dbf |False|
欲遍历这个数组,并且当值为True我需要存储191和c:\用户公共\ test.dbf(对于此示例;实际值来存储将取决于行)。
这里是我的代码:
For Each strPath In Worksheets("OPTIONS").Range("F2:H6")
newChemin = strPath
If strPath <> True And strPath <> False Then Chemin = strPath
If strPath.Value = "True" Then
For Each Cell In Worksheets("OPTIONS").Range("F2:F6")
If Cell = Chemin Then
strChemin = Chemin
Exit For
End If
Next Cell
Set wsSheet1 = wbBook.Worksheets("DB" & strChemin)
If strPath.Value = "TRUE" Then
If FichierExiste(Chemin) Then
Line = Line + 1
Else
Chemin = Worksheets("OPTIONS").Cells(7, 7).Value & "\" & strChemin & "\ancretbd.mdb"
If FichierExiste(Chemin) Then
'* Appel de la Method mod_Importation
Call Importation_Totale
Else
MsgBox "Desolé, le fichié demandé n'existe pas !"
End If
End If
End If
End If
Next strPath
您需要多少次这样做? – Brad
请不要使用str编码范围对象'strPath',因为它会混淆而不是澄清。将其更改为(例如)'rPath'以获得更一般的清晰度。 –
因此,供参考 - “Chemin”(法文)的意思是“Path”(英文),“FichierExiste”的意思是“FileExists”。你能否告诉我们你是如何存储你想要保存的值?为什么你对'strPath.Value =“True”'有多重检查? Line的变量是什么? –