В настоящее время я испытываю ошибку времени выполнения '91 'Object Variable или With Block Variable, которая не установлена для выделенного кода. Целью этого кода является поиск именованного продукта на основе ввода из пользовательской формы, а затем его смещение на доступное количество. Впоследствии он заменит старое значение новым значением, вычитая текущее значение с помощью упорядоченного количества.Замена старого значения на новое значение на основе ввода пользовательской формы
Private Sub btnAdd_Order_Click()
Dim X As Integer
Dim nextrow As Range
Dim DateCus As Range
Dim i As Range
If Me.txtOrder_No.Value = "" Then
MsgBox "Add an Order No"
Exit Sub
End If
If Me.Order1.Value = "" And Me.Qty1.Value = "" Then
MsgBox "No order was specified. Please input an order"
Exit Sub
Else
For X = 1 To 8
Set nextrow = Sheet6.Cells(Rows.Count, 2).End(xlUp).Offset(1, 0)
If Me.Controls("Order" & X).Value > "" And Me.Controls("Qty" & X).Value > "" Then
If Me.Controls("Qty" & X).Value < Application.WorksheetFunction.VLookup(Me.Controls("Order" & X), Sheet4.Range("Products"), 4, 0) Or Me.Controls("Qty" & X).Value = Application.WorksheetFunction.VLookup(Me.Controls("Order" & X), Sheet4.Range("Products"), 4, 0) Then
'This is the one causing the error
Set i = Sheet3.Range("Ingredients").Find(Me.Controls("Order" & X).Value).Offset(0, 3)
i = Application.WorksheetFunction.VLookup(Me.Controls("Order" & X), Sheet4.Range("Products"), 4, 0).Value - Me.Controls("Qty" & X).Value
'End If
Else
MsgBox "There's no stock available for one of the orders"
Всегда помогает отметить, какая строка вызывает ошибку. –