Страница 1 из 1

Трабл со сменой значений переменных

Добавлено: 24 мар 2009, 20:41
Apokal
Здраствуйте. Есть небольшой трабл в следуещем маленьком коде:

Код: Выделить всё

For Counter = 1 To NumberLabsModule3
        [I]Range(Cells(X_Anchor_Field1, Y_Anchor_Field1), Cells((X_Anchor_Field1 + 2), (Y_Anchor_Field1 + 2))).Select[/I]
        With Selection
            .Merge
            .FormulaR1C1 = (" Виконання та захист лабораторної роботи № 1." + Str(Counter))
        End With
        [B]X_Anchor_Field1 = X_Anchor_Field1 + 1[/B]
        [B]Y_Anchor_Field1 = Y_Anchor_Field1 - 4[/B]
    Next Counter
В общем кидает ошибку "Run-time error '1004': Application-defined or object-defined error" и указывает на строчку выделеную курсивом, если закоментить строчки выделеные жирным то все норм, но мне нада както изменить значение этих переменных в цыкле. Подскажите плз в чем может быть трабл?

Re: Трабл со сменой значений переменных

Добавлено: 24 мар 2009, 21:30
Naeel Maqsudov
По видимому начальное значение Y_Anchor_Field1 у Вас слишком мало, тогда как NumberLabsModule3 слишком велико. Например, при
X_Anchor_Field1 = 15
Y_Anchor_Field1 = 14
Все отработает нормально при NumberLabsModule3 <= 4, а на 5 итерауии значение Y_Anchor_Field1 станет отрицательным и неизбежно приведет к указанной Вами ошибке.

Попробуйте погонять этот цикл под отладчиком с контролем переменной Y_Anchor_Field1, и Вы в этом убедитесь.

Re: Трабл со сменой значений переменных

Добавлено: 26 мар 2009, 23:56
Apokal
Пасиба. Как я сам незаметил( тупо как-то вышло такой пустяк.