У меня есть ячейка в диапазоне A, содержащая учетную запись 199. Я использую .Cells (rownum, 1), чтобы найти строку.
If ActiveWorkbook.Worksheets("Startsheet").Cells(rownum, 1).Value = "Account 199" Then
<DO SOMEJOB>
End If
На конкретном листе, в фактическом положении rownum, сравнение с использованием IF не работает и работа не выполняется,
но,
когда над фактической позицией вводится отдельная строка, то приведенное выше сравнение с использованием IF работает правильно.
Попытка путем замены .Value на .Text с использованием функций Range и Cells, но без результата.
Счет 188 или Счет 177 кажутся хорошими, но не Счет 199 !!
Любые предложения, пожалуйста.
Sub test()
Dim rownum As Long
Dim startrow As Long
Dim endrow As Long
Dim lastrow As Long
Dim ant As Long
Dim wasp As Long
lastrow = Worksheets("Startsheet").Range("A65536").End(xlUp).Row
With ActiveWorkbook.Worksheets("StartSheet").Range("A1:A" & lastrow)
wasp = 1
ant = 0
startrow = 0
For rownum = 1 To lastrow
Do
''''''''''''''''''Account 199'''''''''''''''''''''''''''''''''''''''''''''
If ActiveWorkbook.Worksheets("Startsheet").Cells(rownum, 1).Value Like "Account 199" Then
startrow = rownum
wasp = startrow
ant = 0
End If
rownum = rownum + 1
wasp = wasp + 1
If (ant = 2) Then Exit For
Loop Until .Cells(wasp, 1).Value = "@01\QPosted@"
If startrow <> 0 Then
ant = ant + 1
End If
endrow = rownum
rownum = rownum + 1
If ant = 2 Then
Worksheets("StartSheet").Range(startrow & ":" & wasp - 2).Copy
Sheets("Endsheet").Select
Range("A2").Select
ActiveSheet.Paste
End If
Next rownum
End With
End Sub
https://drive.google.com/drive/folders/1yi1dwOoprxrXaNs3WxU0LyIfQzDqRqPP?usp=sharing
Изображение здесь FYI