VBA Excel для каждого цикла
Вложенные циклы должны взять точку, найти ее описание и записать в другой столбец. У меня проблема только в значении B20
написано в C10:C20
, Если я изменю четвертую строку на b.value
, он работает правильно для вывода, но в неправильном столбце, поэтому я считаю, что это проблема зацикливания, но я не вижу решения.
For Each b In Worksheets("Device").Range("B10:B20").Cells
For Each c In Worksheets("Device").Range("C10:C20").Cells
Set pt = srv.PIPoints(b.Value)
c.Value = pt.PointAttributes.Item("descriptor")
Next
Next
1 ответ
Решение
Попробуйте использовать это вместо этого:
For Each b in WorkSheets("Device").Range("B10:B20").Cells
Set pt = srv.PIPoints(b.Value)
b.Offset(,1).Value = pt.PointAttributes.Item("descriptor")
Next
где b.Offset(,1)
дает вам ячейку один столбец справа от b
т.е. если b
указывает на B11
затем b.Offset(,1)
указывает на C11