Страницы: 1
RSS
Поиск телефона в диапозоне, Создание макроса
 
Доброго дня, коллеги, выручайте.
Нужен макрос для справочника, прикладываю файл -
задача при вводе номера телефона в желтую ячейку L2, нажатием на кнопку в ячейку М2 выводилось соответствие из таблицы F:H
Изменено: wolfy36 - 24.11.2020 16:06:36
 
Вам чего в ячейку то М2 выводить? Регион?
Вот горшок пустой, он предмет простой...
 
Да, все верно
 
Там везде один регион, так что выводить?
 
Выводить регион из столбца, файл сокращен, актуальный 4000 строк, регионы будут разные.
 
Вариант на Power Query. В зеленую ячейку вносите нужный телефон, потом тыкаете по этой ячейке правой кнопкой мыши и выбираете пункт меню обновить, справа выведется регион.
Вот горшок пустой, он предмет простой...
 
Теперь не совсем понимаю как дополнить таблицу? И куда из таблицы делась строка с регионом
 
Я разобрался, спасибо
 
wolfy36, столбцы с формулами я убрал, для работы скрипта они не нужны.
Цитата
wolfy36 написал:
как дополнить таблицу?
Копируете диапазон из вашего исходника и  вставляете в синюю таблицу начиная со второй строки, сразу после заголовков. Диапазон умной таблицы должен автоматически расшириться, чтобы захватить все что вы вставите. После этого пользуйтесь.
Изменено: PooHkrd - 24.11.2020 16:42:37
Вот горшок пустой, он предмет простой...
 
В модуль Лист1
Код
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, Range("L2")) Is Nothing Then
   Application.EnableEvents = False
Dim i As Long
Dim iLastRow As Long
   iLastRow = Cells(Rows.Count, 1).End(xlUp).Row
   For i = 2 To iLastRow
     If Target >= Cells(i, "F") And Target <= Cells(i, "G") Then
       MsgBox "Введенный номер попадает в диапазон в строке: " & i & " регион: " & Cells(i, "H")
       Exit For
     End If
   Next
     If i > iLastRow Then
      MsgBox "Нет такого номера в диапазонах столбцов F и G"
          Application.EnableEvents = True
       Exit Sub
     End If
 End If
   Application.EnableEvents = True
End Sub
 
Товарищи, а есть этому альтернитива формулой, то есть если у меня 100к номеров, в столбце А, а в столбец B нужно вывести соответствующий регион?
 
изучайте функцию ВПР()

P.S. Теперь уже данные в столбце А.. раньше были в F и G... Мне кажется вас кто-то держит в заложниках и не даёт сформулировать нормально задание и приложить нормальный (Правильный) пример. То у меня данные там-то, то у меня тут, да мне нужен Регион, но такого названия столбца в таблице нет... Что с вами происходит?
Изменено: New - 24.11.2020 16:51:59
 
wolfy36, есть, в зеленую табличку можете вставить не один номер, а сто тысяч номеров и нажать обновить, он вам подтянет все регионы. Но работать будет довольно долго, т.к. скрипт для этого не оптимизирован. Чтобы работал быстро, его нужно будет переделать. Но вы попробуйте, может и так устроит.
Изменено: PooHkrd - 24.11.2020 16:51:17
Вот горшок пустой, он предмет простой...
 
Ды с ВПР вроде как на ТЫ, но тут то диапазон, я так понимаю нужен массив, причем здесь ВПР
 
Цитата
wolfy36 написал:
Ды с ВПР вроде как на ТЫ
Значит все таки на ВЫ. Если отсортировать ваш справочник по столбцу F, то при помощи ВПР можно подтягивать регион интервальным просмотром, это когда последний аргумент = 1, а не ноль. Но там скорее всего не так просто, если интервалы имеют пробелы, хотя это тоже можно обойти.
Изменено: PooHkrd - 24.11.2020 16:56:37
Вот горшок пустой, он предмет простой...
 
Обязательно прочту, попробую Ваш вариант с более обширной базой в 20 К позже. В любом случае спасибо
Страницы: 1
Наверх