Private Sub Submit_Click()
Application.ScreenUpdating = False
Dim rangeForCode As range, rngLookupRange As range
Dim row As Integer, stock As Integer
Dim result As Integer
Dim drugCodePC As Integer
Dim qty As Integer
Dim ws As Worksheet
drugCodePC = CInt(DrugCode2.Value)
qty = CInt(Quantity.Value)
'Populating the drug name
Set ws = Worksheets("Drug Record")
ws.Select
*Set rangeForCode = ws.range("DrugCodeInventory")*
row = Application.WorksheetFunction.Match(drugCodePC, rangeForCode, 1)
Set rngLookupRange = ws.range("Inventory")
stock = Application.WorksheetFunction.VLookup(drugCodePC, rngLookupRange, 3, False)
result = stock + qty
'MsgBox (row)
ws.Cells(row + 1, 3).Value = result
Application.ScreenUpdating = True
Unload PurchaseForm
End Sub
Это продолжает бросать ошибку «диапазон методов объекта _worksheet failed named range». Ошибка возникает в **. Я знаю, что это имеет какое-то отношение к названному диапазону, потому что раньше, когда я писал диапазон ячеек, т.е. «A1: A215» работает. Я проверил диапазон имен, и он выглядит правильно. Также указано имя именованного диапазона. Сначала я попытался активировать рабочую книгу, но ошибка все равно была сброшена.
метод диапазон объекта _workheet сбой с именованным диапазоном
Названный варьировались является:
= OFFSET(DrugCodeInventory!$A$2, 0, 0, COUNTA(DrugCodeInventory!$A:$A)-1,1)
Я только хочу, чтобы выбрать первый столбец в моем листе динамически.
Попробуйте использовать другое название для своего диапазона (то есть, не то же имя, что и на листе) –
Извините, я немного растерялся. Вы говорите, что диапазон «DrugCodeInventory» относится к '= OFFSET (DrugCodeInventory! $ A $ 2, 0, 0, COUNTA (DrugCodeInventory! $ A: $ A) -1,1)'? –
Помог ли любой из ответов? (если они сделали то вверх по ним +1) - если бы это означало, что ваша проблема была исправлена, то отметьте ее как решение. – whytheq