Я впервые собираю пользовательскую форму для друга, который начинает бизнес, чтобы создавать цитаты.Это поиск сведений о поставщике и стоимости материалов из базы данных и создание предложения.
Я изо всех сил пытаюсь использовать данные из комбинированных списков для поиска, а затем отображать их в метке… для последующего появления нацитата.
Я использую два поля со списком для фильтрации данных, основываясь на вводе пользователя, у меня это работает нормально.
Бит, который я не могу обойти, принимает результатиз второго поля со списком и отображения данных из соседней горизонтальной ячейки в метке.
У меня есть код, который ничего не отображает в метке:
Private Sub Label14_Click()
Dim WF As WorksheetFunction
Dim Bx2 As String
Bx2 = Me.ComboBox2.Value
Set WF = WorksheetFunction
With Worksheets("Sheet2")
Bx2 = WF.Index(.Columns(2), WF.Match(WF.Max(.Columns(3)), .Columns(3), False))
Label14.Caption = "Bx2"
End With
Label14.Caption = "Bx2"
End Sub
Я хочу получить результат от пользовательской формыcomboBox, найдите / сопоставьте в массиве, а затем отобразите результат из соседней ячейки в метке пользовательской формы.
Обновление ... Спасибо за отзыв, почему заголовок метки не работал ... абсолютноПраво удалить "" У меня все еще есть проблема ... Индекс и соответствие продолжают возвращать ошибку времени выполнения, но я не понимаю, почему .. Ошибка говорит Method'Range of object'_worksheet'failed Код нетw выглядит так ...
Private Sub ComboBox2_Change()
Dim WF As WorksheetFunction
Dim Bx2 As String, Res
Dim rng As Range, v
Set rng = Sheet3.Range("B2", Sheet3.Cells(Rows.Count, "B").End(xlUp))
Set WF = WorksheetFunction
v = rng.Offset(0, 1)
Bx2 = Me.ComboBox2.Value
Res = WF.Index(Sheet3.Range(rng), WF.Match(Bx2, Sheet3.Range(rng), 0), WF.Match(Bx2, Sheet3.Range("v"), 0))
Label14.Caption = Res
End Sub