У меня есть несколько проблем с попыткой найти число, длина которого равна или больше, чем длина 9 цифр.
Я написал это, и если число меньше 9, оно берет егов противном случае это не так.
Числа в таком формате, как этот 1013617518
Sub LoopThroughDirectory()
Application.DisplayAlerts = False
Dim Ifind As String, rngData As Range
Dim rngFound As Range
Dim r As Long
MyPath = "C:/"
activefile = Dir(MyPath & "*.csv")
r = 1
Start:
If Range("A" & r) = "" Then
Exit Sub
End If
Application.ScreenUpdating = False
Do While activefile <> ""
Ifind = Range("A" & r).Value
Workbooks.Open Filename:=MyPath & activefile
Set rngData = ActiveSheet.Range("B:B")
Set rngFound = rngData.Find(Ifind, LookIn:=xlValues)
ActiveWorkbook.Close
If Not rngFound Is Nothing Then
Range("B" & r) = activefile
r = r + 1
GoTo Start
Else: Range("B" & r) = "Not Found"
End If
activefile = Dir()
Range("A" & r).Select
Loop
Application.ScreenUpdating = True
r = r + 1
activefile = Dir(MyPath & "*.csv")
GoTo Start
Application.Display Alerts = True
End Sub
Любые идеи, почему они не собирают и не выбирают более короткие номера, были бы хороши