Здравствуйте. Может кто поможет, почему при нажатии на кнопки "Отмены" на различных этапах макроса выскакивает ошибка, а не отменяется макрос? Вот код:
Спасибо за помощь.
Код |
---|
Public itog Sub Кнопка2_Щелчок() With Sheets("Игрушки") x = InputBox("Введите штрих-код", "Поиск штрих-кода") If VarType(x) = vbBoolean Then Exit Sub x = "*" & x & "*" Dim cell As Range Set cell = .Columns(3).Find(What:=x, LookIn:=xlValues, LookAt:=xlWhole) If cell Is Nothing Then MsgBox "Штрих-код не найден", vbCritical Exit Sub Else y1 = cell.Offset(0, 2) - cell.Offset(0, 10) y = InputBox(cell.Offset(0, 1) & vbCrLf & "Введите количество товара" & vbCrLf & "Осталось: " & y1 & "шт.", "Количество товара") If VarType(y) = vbBoolean Then Exit Sub Else cell.Offset(0, 10) = cell.Offset(0, 10) + CDbl(y) End If Z = InputBox("Введите цену товара" & vbCrLf & "Закупочная цена: " & Format(cell.Offset(0, 6), "#,##0.00") & " руб." & vbCrLf & "Цена: " & Format(cell.Offset(0, 7), "#,##0.00") & " руб.", "Цена товара") If VarType(Z) = vbBoolean Then Exit Sub Else cell.Offset(0, 9) = cell.Offset(0, 9) + CDbl(Z) itog = itog + CDbl(Z) End If End If Dim xx xx = MsgBox("Необходимо найти еще один штрих-код?", vbYesNo, "Поиск штрих-кода") If xx = 6 Then Кнопка2_Щелчок Else MsgBox "Общая сумма " & itog & " руб.", vbOKOnly End If If cell.Offset(0, 10) = cell.Offset(0, 2) Then With Union(cell.Offset(0, 1), cell.Offset(0, 2)).Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .Color = 255 .TintAndShade = 0 .PatternTintAndShade = 0 End With End If End With End Sub |