Добрый вечер. Собрал вот такую процедуру:
Private Sub CommandButton1_Click()
СтрокаСчета = 3
Do While Sheets("Счета").Cells(СтрокаСчета, 2) <> ""
Sheets("Счета").Rows(СтрокаСчета).Select
If Sheets("Счета").Cells(СтрокаСчета, 2).Interior.Color = RGB(255, 255, 255) Then
Артикул = Sheets("Счета").Cells(СтрокаСчета, 1)
СтрокаБД = 3
Do While Sheets("БД").Cells(СтрокаБД, 1) <> ""
If Sheets("БД").Cells(СтрокаБД, 3) = Артикул Then
Sheets("Счета").Cells(СтрокаСчета, 5) = Sheets("БД").Cells(СтрокаБД, 13)
Sheets("Счета").Cells(СтрокаСчета, 10) = Sheets("БД").Cells(СтрокаБД, 10)
Sheets("Счета").Cells(СтрокаСчета, 11) = Sheets("Счета").Cells(СтрокаСчета, 4) * 2
Exit Do
End If
СтрокаБД = СтрокаБД + 1
Loop
End If
СтрокаСчета = СтрокаСчета + 1
Loop
End Sub
при умножении: Sheets("Счета").Cells(СтрокаСчета, 11) = Sheets("Счета").Cells(СтрокаСчета, 4) * 2 все нормально.Но мне надо перемножить значения Sheets("Счета").Cells(СтрокаСчета, 4) и Sheets("Счета").Cells(СтрокаСчета, 10). А так не работает.
Пожалуйста подскажите как надо правильно.
И еще: Как правильно обнулить ячейки на листе "Счета" со строки 3 в столбцах 5-12 в этом коде перед запуском?
Вообще-то такая структура кода работает довольно медленно. Почему?
Private Sub CommandButton1_Click()
СтрокаСчета = 3
Do While Sheets("Счета").Cells(СтрокаСчета, 2) <> ""
Sheets("Счета").Rows(СтрокаСчета).Select
If Sheets("Счета").Cells(СтрокаСчета, 2).Interior.Color = RGB(255, 255, 255) Then
Артикул = Sheets("Счета").Cells(СтрокаСчета, 1)
СтрокаБД = 3
Do While Sheets("БД").Cells(СтрокаБД, 1) <> ""
If Sheets("БД").Cells(СтрокаБД, 3) = Артикул Then
Sheets("Счета").Cells(СтрокаСчета, 5) = Sheets("БД").Cells(СтрокаБД, 13)
Sheets("Счета").Cells(СтрокаСчета, 10) = Sheets("БД").Cells(СтрокаБД, 10)
Sheets("Счета").Cells(СтрокаСчета, 11) = Sheets("Счета").Cells(СтрокаСчета, 4) * 2
Exit Do
End If
СтрокаБД = СтрокаБД + 1
Loop
End If
СтрокаСчета = СтрокаСчета + 1
Loop
End Sub
при умножении: Sheets("Счета").Cells(СтрокаСчета, 11) = Sheets("Счета").Cells(СтрокаСчета, 4) * 2 все нормально.Но мне надо перемножить значения Sheets("Счета").Cells(СтрокаСчета, 4) и Sheets("Счета").Cells(СтрокаСчета, 10). А так не работает.
Пожалуйста подскажите как надо правильно.
И еще: Как правильно обнулить ячейки на листе "Счета" со строки 3 в столбцах 5-12 в этом коде перед запуском?
Вообще-то такая структура кода работает довольно медленно. Почему?