Страницы: 1
RSS
Макрос по поиску, Помогите пожалуйста написать макрос по поиску номера телефона
 
Добрый всем день, помогите пожалуйста написать макрос. Даны четыре столбца: 1 - Организация, 2 - Контактное лицо, 3 - Номер телефона, 4 - Эл. почта. Нужно, чтобы при написании во всплывающем окне организации или конт. лица, независимо полностью написано или часть (например, конт. лицо Иванов Иван Иванович, а запрос делается на Иванова или Ивана Ивановича) выплывал MsgBox с текстом: Номер абонента такой-то, эл. почта такая-то. Помогите пожалуйста. Заранее спасибо. Моего ума хватило только на это):

Sub Телефоны()
  InputBox ("Введите организацию или контактное лицо")
. . .
  MsgBox ("Номер телефона абонента и эл. почта")
End Sub
 
— О, Джонни, я хочу как в синематографе. Прошу тебя, сделай монтаж!  :)

не переживайте, сделаем
Вместо того макроса, который Вы написали, приложите файл пример, с Вашей таблицей. Пяти записей будет за глаза.
 
Запишите макрорекордером поиск значения по части содержимого клетки и будет Вам счастье :D
Я сам - дурнее всякого примера! ...
 
))) добрые люди)))
Ну, допустим, как-то так)
 
Код
Sub Телефоны()
    Dim s$, r As Range
    s = InputBox("Введите организацию или контактное лицо")
    If Len(s) Then
        Set r = Cells.Find(s, ActiveCell, xlFormulas, 2)
        If Not r Is Nothing Then _
           MsgBox ("Номер телефона абонента " & Cells(r.Row, 3) & " и эл. почта " & Cells(r.Row, 4))
    End If
End Sub
Изменено: KuklP - 19.03.2013 16:21:32
Я сам - дурнее всякого примера! ...
 
О, Господи, чудо!!!!!!!!!!!!!!! Спасибо Вам огромное, всё так, как я хотела))) только вот уточните пожалуйста, если есть одинаковые фамилии, например, как тут быть?)
 
Никак. Ищите по номеру, организации.
Я сам - дурнее всякого примера! ...
 
Вечером выложу свой пример. Делал один раз похожее задание, немного под Вас подправлю.
 
Хорошо, всем огромное спасибо)
 
Держите. Надеюсь подойдет.
 
Супер, Sergei_A! Зашел на эту тему потому что самому что то похожое надо. И тут такой классный вариант "поисковика"! Попробую переделать под свой файл, хотя в макросах не сильно разбираюсь. Если будут вопросы, можна, Вам в личку написать, Sergey_A? Просто не хочу на форуме мусорить.
 
Пишите. Если по данному вопросу, то можно и здесь. Кому-то еще пригодится.
 
Цитата
KaTeR-Ok пишет:
уточните пожалуйста, если есть одинаковые фамилии, например, как тут быть?
Вариант: выводить все найденные в ListBox.
 
Sergei_A,
Ого, прикольно, спасибо большое)
 
Юрий М,
Ещё бы знать как)))
 
Sergei_A, , подскажите пожалуйста, где прописывается размещение найденных записей, просто там друг на друге они  и не видно конец телефона)
 
В варианте Sergei_A как раз найденные значения
выводятся в ListBox
 
В свойствах листбокса формы. Вы напишите номер телефона, который не влезает. Я делал под те, что Вы привели в примере
 
Sergei_A, 8 (831) 430-47-14, 434-43-69, ф. 8 (831) 433-84-78, я его и так растянула)))) всё равно край просто не показывает), даже у короткого номера. Мне надо растянуть столбики конт. лицо и телефон
Изменено: KaTeR-Ok - 20.03.2013 15:14:12
 
KaTeR-Ok, Хорошо, я подправлю
 
Sergei_A, Спасибо)
 
Цитата
Sergei_A пишет:
Пишите. Если по данному вопросу, то можно и здесь. Кому-то еще пригодится.
Здравствуйте! Вчера просидел весь вечер, пытался переделать Ваш макрос под свой файл. Все кончилось - печально.  :cry:  Помогите, пожалуйста, если есть время и желание.
1. Оставил только "основное" из макроса - поиск, все остальное вроде бы - не нужно. Если я ошибаюсь - подскажите в чем.
2. Проблема в том что я хочу чтобы макрос работал на пустом листе, а не на листе с таблицей. Почему? Не только я буду пользоватся этим файлом и боюсь что в таблице могут что то случайно изменить. Плюс таблица будет большой и хочу чтобы "поисковик" был побольше. Соответственно лучше на другом листе.
3. Таблица еще практически пустая. То есть она еще будет заполнятся не только объектами которые уже прописаны но и новыми объектами.
Изменено: FeD_Lviv - 20.03.2013 15:24:48
 
KaTeR-Ok,
Так как длина телефон выходит за разумные пределы, подгонять форму считаю не логичным. Сделал инфо по контакту, высвечивающуюся по клику.
Пробуйте
Изменено: Sergei_A - 20.03.2013 15:37:15
 
FeD_Lviv,
Нужно определиться. С какого листа брать данные для поиска?
По каким столбцам таблицы искать совпадение, при вводе в поиск?
 
Лист "Таблиця"
"Адреса" или "Тип двигуна"
 
KaTeR-Ok,
Растянул, вроде ничего, всё влезат  :)
 
Sergei_A, здорово, спасибо
 
FeD_Lviv,
Это Ваше.
На сегодня список добрых дел исчерпан  :)
 
:D  Большое, Вам спасибо. Хотел написать что бы Вы обращались если что, но я не знаю чем я, смогу, Вам помочь в Excele.  :oops:
 
Форум для этого и есть, обычно кто то да поможет.
Удачи!
... да, забыл сказать. У Вас также будут искаться совпадения по назначению. Побочный эфект. Или поменяйте столбцы в таблице, так как на форме. Тогда диапазон, который берется в коллекцию, нужно будет испраить на
Set coll = wsh.Range("D2:E" & wsh.Cells(Rows.Count, "A").End(xlUp).Row)
Изменено: Sergei_A - 20.03.2013 17:13:54
Страницы: 1
Читают тему
Наверх