yulka6464, цитируй пожалуйста неправильные места программы.
Вычисление количества наименований товаров - это этот кусок кода?
Код:
Private Sub CommandButton3_Click()
Dim i As Integer, x As Integer
Dim j As Integer
'j можно посчитать лишней и заменить на константу 12, а можно и оставить
i = 0
j = 12 'строка с которой начинаются записи в таблице
Do Until Worksheets("Вычисления").Cells(j + i, 4) = "" 'проверяется условие - не являеся ли строка пустой
i = i + 1 'подсчитывается количество заполненных строк
Loop
i = i + 1 'если честно, то данный шаг сомнителен
Не правилен в какую сторону? В бОльшую, в меньшую?
----
прикрепи пожалуйста текущий файл екселя в формате 2003 его офиса.