Есть таблица в worde, состоящая из 6 столбцов.
Все ячейки 4 столбца умножаются на все ячейки 5 столбца (последовательно) и результат записывается в 6 столбец.
Если в ячейке 4 столбца (любой хоть 1 хоть 4) пусто - то нужно просто пропускать умножение и переходить к другой и так далее.
Как пофиксить данный кусок кода?
Спойлер
For ROW2 = 2 To targetRow - 1
cellV1 = ActiveDocument.Tables(2).cell(ROW2, 5).Range.Text 'все значения пятого стобца
cellV1 = Replace(cellV1, Chr(7), "")
If cellV1 <> "" Then
numberV1 = CDbl(cellV1)
Else: GoTo SkipRow
End If
cellV2 = ActiveDocument.Tables(2).cell(ROW2, 4).Range.Text 'все значения 4 стобца
cellV2 = Replace(cellV2, Chr(7), "")
If cellV2 <> "" Then
numberV2 = CInt(cellV2)
V = numberV1 * numberV2
formattedV1 = format(V, "###,##0.00")
ActiveDocument.Tables(2).cell(ROW2, 6).Range.Text = formattedV1
Else: GoTo SkipRow
End If
SkipRow:
Next ROW2
Цитата:
Если в ячейке 4 столбца (любой хоть 1 хоть 4) пусто
Достаточно посмотреть одну ячейку или надо все четыре ячейки посмотреть?
нужно просмотреть произвольное количество ячеек - то есть их может быть сколько угодно
Если в столбце 4 пусто, то не делать вычисление в этой строке?
да, просто переходить к следующей, если в столбце нигде нет значений то просто пропусть весь столбец, типо того
Написал вам два письма на почту с заголовком "Письмо с Форума по VBA, Excel и Word". Написал именно на почту, а не на форум.
Спойлер
For ROW2 = 2 To targetRow - 1
If Len(ActiveDocument.Tables(2).Cell(ROW2, 4).Range.Text) = 2 Then
GoTo SkipRow
End If
cellV1 = ActiveDocument.Tables(2).Cell(ROW2, 5).Range.Text 'все значения пятого стобца
cellV1 = Replace(cellV1, Chr(7), "")
If cellV1 <> "" Then
numberV1 = CDbl(cellV1)
Else: GoTo SkipRow
End If
cellV2 = ActiveDocument.Tables(2).Cell(ROW2, 4).Range.Text 'все значения 4 стобца
cellV2 = Replace(cellV2, Chr(7), "")
If cellV2 <> "" Then
numberV2 = CInt(cellV2)
V = numberV1 * numberV2
formattedV1 = Format(V, "###,##0.00")
ActiveDocument.Tables(2).Cell(ROW2, 6).Range.Text = formattedV1
Else: GoTo SkipRow
End If
SkipRow:
Next ROW2
Большое спасибо за помощь, все заработало, я бы не понял как это надо исправить