Выполняю зависимые списки следующим образом: [vba]
Код
SUB Razdel() DIM i AS LONG Set ShList = ThisWorkbook.Worksheets("Склад") Set StoreListObj = ShList.ListObjects("Склад_tb") i = 1 FOR Each StoreListRow In StoreListObj.ListRows IF StoreListRow.Range.Cells(i, 1) <> StoreListRow.Range.Cells(i + 1, 1) THEN AddRew.txb_arcticle.AddItem StoreListRow.Range.Cells(i, 1) END IF NEXT StoreListRow END SUB
SUB Groop() Set ShList = ThisWorkbook.Worksheets("Склад") Set StoreListObj = ShList.ListObjects("Склад_tb") AddRew.txb_desc.CLEAR FOR Each StoreListRow In StoreListObj.ListRows IF StoreListRow.Range(1) = AddRew.txb_arcticle.Value THEN AddRew.txb_desc.AddItem StoreListRow.Range(2) END IF NEXT StoreListRow END SUB
[/vba] Далее выполняю вот это [vba]
Код
SUB SearhArticle() 'Вывод данных по значению Артикла(Шифр Металлопродукции) DIM Cell AS Range Set ShStore = ThisWorkbook.Worksheets("Склад") Set StoreListObj = ShStore.ListObjects("Склад_tb") IF AddRew.txb_nuumber.Value = "" THEN AddRew.txb_nuumber.Value = "" END IF Set Cell = StoreListObj.ListColumns.Item(2).Range.Find(AddRew.txb_desc.Value, LookAt:=xlWhole)
IF NOT Cell IS Nothing THEN AddRew.txb_nuumber.Value = Cell.Cells(1, 3) END IF END SUB
[/vba] Но данные почему то не появляются. Файл приложил. Помогите найти причину почему так происходит. Кто понимает что я делаю исходя из кода поймет меня. Для других описываю, мне нужно так: Если я в поле "Группа металлопродукции" выбираю значение В другом поле ниже, выбираю другое значение ТО в 3 поле которое после идет, должно подставится определённые данные которые зависят от второго поля.
Выполняю зависимые списки следующим образом: [vba]
Код
SUB Razdel() DIM i AS LONG Set ShList = ThisWorkbook.Worksheets("Склад") Set StoreListObj = ShList.ListObjects("Склад_tb") i = 1 FOR Each StoreListRow In StoreListObj.ListRows IF StoreListRow.Range.Cells(i, 1) <> StoreListRow.Range.Cells(i + 1, 1) THEN AddRew.txb_arcticle.AddItem StoreListRow.Range.Cells(i, 1) END IF NEXT StoreListRow END SUB
SUB Groop() Set ShList = ThisWorkbook.Worksheets("Склад") Set StoreListObj = ShList.ListObjects("Склад_tb") AddRew.txb_desc.CLEAR FOR Each StoreListRow In StoreListObj.ListRows IF StoreListRow.Range(1) = AddRew.txb_arcticle.Value THEN AddRew.txb_desc.AddItem StoreListRow.Range(2) END IF NEXT StoreListRow END SUB
[/vba] Далее выполняю вот это [vba]
Код
SUB SearhArticle() 'Вывод данных по значению Артикла(Шифр Металлопродукции) DIM Cell AS Range Set ShStore = ThisWorkbook.Worksheets("Склад") Set StoreListObj = ShStore.ListObjects("Склад_tb") IF AddRew.txb_nuumber.Value = "" THEN AddRew.txb_nuumber.Value = "" END IF Set Cell = StoreListObj.ListColumns.Item(2).Range.Find(AddRew.txb_desc.Value, LookAt:=xlWhole)
IF NOT Cell IS Nothing THEN AddRew.txb_nuumber.Value = Cell.Cells(1, 3) END IF END SUB
[/vba] Но данные почему то не появляются. Файл приложил. Помогите найти причину почему так происходит. Кто понимает что я делаю исходя из кода поймет меня. Для других описываю, мне нужно так: Если я в поле "Группа металлопродукции" выбираю значение В другом поле ниже, выбираю другое значение ТО в 3 поле которое после идет, должно подставится определённые данные которые зависят от второго поля.baskakova7441
RAN, да, моя невнимательность. Тут надо ссылаться на ячейку поиска. ТО есть вместо 3, 2
Прошу помощи в этой теме, а можете подсказать как сделать макрос для умной таблице, например так: Я нажимаю на кнопку "1" а она выполняет след.действие: в столбце 2, выбирает например 1 и все данные выводятся связанные с 1, и так далее. И соответственно макрос на удаление всех фильтров
RAN, да, моя невнимательность. Тут надо ссылаться на ячейку поиска. ТО есть вместо 3, 2
Прошу помощи в этой теме, а можете подсказать как сделать макрос для умной таблице, например так: Я нажимаю на кнопку "1" а она выполняет след.действие: в столбце 2, выбирает например 1 и все данные выводятся связанные с 1, и так далее. И соответственно макрос на удаление всех фильтровbaskakova7441