【发布时间】:2015-09-03 05:03:21
【问题描述】:
Sub Main()
Dim FName As Variant, R As Long, DirLoc As String, i As Integer
R = 1
i = 1
DirLoc = ThisWorkbook.Path & "\" 'location of files
FName = Dir(DirLoc & "*.csv")
Do While FName <> ""
ImportCsvFile DirLoc & FName, ActiveSheet.Cells(R, 1)
R = ActiveSheet.UsedRange.Rows.Count + 1
FName = Dir
For i = 1 To 100
Worksheets("RAW").Range("B1:B6").Copy
Worksheets("filtered").Range("A" & Rows.Count).End(xlUp).Offset(1).PasteSpecial , Transpose:=True
Cells.Find(What:="Run:", After:=Cells(1, 1), _
LookIn:=xlValues, LookAt:=xlPart, _
SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Select
Worksheets("filtered").Cells(10, 10).Value = i
If ActiveCell <> "Run:" & i Then
Exit For
End If
Next i
DeleteFiltered
Loop
End Sub
我遇到了问题,因为我收到了一个错误:
`Cells.Find(What:="Run:" & i, After:=Cells(1, 1), _
LookIn:=xlValues, LookAt:=xlPart, _
SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Select`
当我删除“& i”时错误不会发生。我用它来导入一个数据文件,然后找到一个特定的“Run:1”。然后它应该复制数据并找到下一个 Run,以及之后的一个。这就是为什么我需要 & i。我怎样才能做到这一点?
还有一些代码部分肯定没问题,所以我把它们省略了。
【问题讨论】:
-
我召唤@hansup ..!
-
辛辛苦苦地吟唱来辅助召唤仪式
-
这可能无济于事,但是如果您在适当的位置添加
Dim String1 As String和String1 = "Run:" & i并将Cells.Find(What:="Run:" & i更改为Cells.Find(What:=String1会发生什么?
标签: vba excel loops object find