Всем доброй ночи. Написал макрос формирования листбокса с поиском и перебором значений, но появляется ошибка. Уже который час не могу понять почему не работает. В отладчике все переменные имеют значения, без ошибок, но во втором цикле программа не хочет завершаться по Exit For и выдает ошибку "Run-time error '13': Type mismatch". Суть работы макроса заключается в следующем: есть большой список (более 60000 строк), значений очень много повторяющихся, но они идут последовательно (по датам от меньших к большим). Макрос должен найти значение на листе из сформированного массива и поставить его в листбоксе рядом. НО. Значение нужно найти с конца списка, которое удовлятворяло бы условиям IF... Может кто то знает как проще это можно реализовать или подскажет в чем тут дело в макросе? Вот код макроса:
Код
Dim MainMass()
Private Sub List01()
Dim lLastRow
Dim tmpFnd
MainMass = Sheets("Лист2").Range("A3:O56").Value
'ListBox1.ColumnCount = 5
'ListBox1.ColumnWidths = "40;10;1"
lLastRow = Sheets("Лист1").Cells(Rows.Count, 1).End(xlUp).row
z = 1
For z = 1 To UBound(MainMass) - LBound(MainMass)
If MainMass(z, 1) = 1 Then
ListBox1.AddItem MainMass(z, 2)
xc = 54
Set isFound = Sheets("Лист1").Range("C:C").Find(MainMass(z, 2), After:=Cells(lLastRow - xc, 3), LookIn:=xlValues, lookat:=xlWhole)
tmpFnd = isFound.row
For fnd = 1 To 100
If Sheets("Лист1").Cells(tmpFnd, 10) = "=" Then GoTo ness
If Sheets("Лист1").Cells(tmpFnd, 7) = "У" Or "В" Then Exit For
ness:
tmpFnd = tmpFnd - xc
Next fnd
ListBox1.List(ListBox1.ListCount - 1, 3) = Sheets("Лист1").Cells(tmpFnd, 10)
ListBox1.List(ListBox1.ListCount - 1, 4) = MainMass(z, 14)
End If
Next z
End Sub
Какая ночь!? Давно уж утро на дворе - страна большая, однако;) Ошибка тут
Код
Sheets("Лист1").Cells(tmpFnd, 7) = "У" Or "В"
Разве "В" - логическая константа? Сэкономить на буквах не получиться - нужно
Код
Sheets("Лист1").Cells(tmpFnd, 7) = "У" Or Sheets("Лист1").Cells(tmpFnd, 7) = "В"
Цитата
Может кто то знает как проще это можно реализовать
Для этого желательно, по крайней мере для меня, более детального описания задачи, файла с примером исходных данных и что и почему должно быть в Listbox Успехов.