Я использую этот цикл для поиска значений. .Find работает, но findNext не делает, омминг многих значений. Здесь я бросаю свой код, есть ли у вас какие-либо советы? Большое спасибо!!.FindNext в цикле не работает
For Each ws In SourceWb.Worksheets
If IsNumeric(Left(ws.Name, 3)) Then
Set gCell = ws.Columns(6).Find(what:=numdoc, LookIn:=xlValues, lookat:=xlWhole, SearchOrder:=xlByRows, MatchCase:=False, searchformat:=False)
If Not gCell Is Nothing And IsNumeric(Left(gCell.Parent.Name, 3)) Then
firstAddress = gCell.Address
Do
repetidos = repetidos + 1
finalcell = gCell.Address
'merged cells code here not displayed
oldaddress = gCell.Address
'>Having trouble here> **
Set gCell = ws.Columns(6).FindNext(after:=gCell)
'**
Loop Until gCell.Address = oldaddress
End If
End If
Next ws
Вы компилируете для вас? Я получаю ошибку компиляции 'Next without For'. –
Да, возможно, я мог бы исправить конец, если при создании сообщения попробуйте удалить это кодовое предложение: Если firstAddress <> oldaddress Then – Chakal
Как вы объявили переменные? Я не думаю, что это проблема, но мне трудно попытаться воспроизвести вашу проблему. Вы посмотрели на логику в вашей «Do ... Loop»? –