Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как найти нужную ячейку! 
V
    Опции темы
Ved
Дата 26.6.2007, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 3.8.2006
Где: Хижина в Тетюшах

Репутация: нет
Всего: 1



Извините возможно я пишу не туда, может надо было в раздел помощи!

Вопрос в том, что я изучаю книгу по програмированию ВБА, это мне очень нужно так как у нас всё практически делается через офис!
Но, я не такой что изучу его за один день - и поэтому обращаюсь к Вам Уважаемые:
Не подскажете как мне найти из списка нужную строку, допустим у меня есть список примерно 3000  наименований ну там разных кодов заболевания!
Мне нужно найти один я его знаю допустим по названийю а не по начальной букве кода, его искать это мне всё читать - столько время отнимает!
Так вот я в этом листе зделал 2 элемента управления один поле, другая кнопка и хочу в поле ввести слово которое исчу, и при событие нажатия на кнопку на листе отмечалась строка которую исчу!
 
Вот мой Вопрос надеюсь на Вашу помощь! smile 


--------------------
Я не волшебник, я только учусь!  smile 
PM MAIL   Вверх
bilya
Дата 26.6.2007, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 3.1.2007

Репутация: 1
Всего: 1



А не лучше ли сделать автофильтр для вашего списка? Very удобная штука
PM MAIL   Вверх
Ved
Дата 26.6.2007, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 3.8.2006
Где: Хижина в Тетюшах

Репутация: нет
Всего: 1



bilya, 
Цитата

А не лучше ли сделать автофильтр для вашего списка? Very удобная штука 


Я не понял из выше сказанного ничего, так как я не знаю Very это что программа или это в офисе есть?



Во вторых если я это сделаю с Вашей помощью что нибудь в ВБА то мне потом легче будет в обучении, и от этого много других моих нужд будут отталкиватся, и успешно разрешатся, Так что будьте любезны помогите если это не слишком много отнимет времени у Вас, мне достаточно не больших подсказок и я потихоньку упираясь своей деревянной головой в них smile , потихоничку что нибудь наковыряю! smile 


Это сообщение отредактировал(а) Ved - 26.6.2007, 13:52


--------------------
Я не волшебник, я только учусь!  smile 
PM MAIL   Вверх
dionisiu
Дата 26.6.2007, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 13.5.2006
Где: Крым

Репутация: 1
Всего: 2



один из универсальных способов изучения VBA (не считая подсказок форумчан) - сделать чего-нибубь макрорекордером и посмотрель записанный код.

Зайдите Сервис/Макросы/Начать запись....  Появится диалог настройки вызова макроса (делать лучше на отдельной копии книги) - можно изменить название и нужно назначить кнопку вызова (вызывается потом через Ctrl + клавиша). Для обучения и примера я обычно использую "й" (строчную, а то при прописной нажатие контр-шифта меняет язык), всё равно макрос потом уничтожается.

Потом выполните действия по поиску нужной последовательности (Ctrl+f - вызов диалога поиска, введите требуемый результат, в параметрах назначьте контроль совпадлений - ячейка целиком, при желании), жмите ВВОД, когда последовательность будет найдена - выделите строку с найденной последовательностью и остановите рекордер.
Дальше жмите Alt+F11, перейдите в модуль1 и смотрите - чего получилось.

Каждую непонятную конструкцию можно просмотреть в справочние, достаточно выделить (или даже просто поместить курсор на непонятное слово) и нажать F1.



Это сообщение отредактировал(а) dionisiu - 26.6.2007, 14:53
PM MAIL ICQ   Вверх
RockClimber
Дата 26.6.2007, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: 7
Всего: 15



Цитата(Ved @  26.6.2007,  13:51 Найти цитируемый пост)
Я не понял из выше сказанного ничего, так как я не знаю Very это что программа или это в офисе есть?


Very - "очень" по-английски.
По сути вопроса: выделяешь любую ячейку списка, жмешь Данные -> Фильтр -> Автофильтр. Дальше сам все поймешь.


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
Ved
Дата 30.6.2007, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 3.8.2006
Где: Хижина в Тетюшах

Репутация: нет
Всего: 1



RockClimber, 
я потом уже после сообщегния догнал, 

dionisiu, 
с этой фигней я скоро кони отброшу, чота у меня пока не получается, завтра код выброшу суда там такая путаница, за помощь спасибо, только я с формами хочу так как мне именно это надо!


--------------------
Я не волшебник, я только учусь!  smile 
PM MAIL   Вверх
dionisiu
Дата 2.7.2007, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 13.5.2006
Где: Крым

Репутация: 1
Всего: 2



Вот код, который я использую для поиска конкретной последовательности в БОЛЬШОМ файле (на маленьких хватает возможностей поиска, которые прописывает макрорекордер)

Код

    'следующая сложная конструкция подсказана pashulka на developing.ru и обеспечивает поиск слова "Итого"
    'почему на большом файле не работает простой поиск - это непонятно
    With Worksheets(1)
         iMinRow& = .UsedRange.Row 'получили строку начала использованного диапазона
         iMaxRow& = .UsedRange.Rows.Count + iMinRow& - 1 'получили строку конца использованного диапазона
         For iRow& = iMinRow& To iMaxRow&
             iValueFind = .Columns(1).Rows(iRow&).Value
             If Not IsEmpty(iValueFind) And Not IsError(iValueFind) Then
                Set iCell = .Columns(1).Find(What:="Итого", LookIn:=xlValues, LookAt:=xlWhole)
                If Not iCell Is Nothing And iCell.Value = "Итого" Then Exit For
             End If
         Next iRow&
    End With
    iCell.Activate


Как видно из комментов, код не мой, хотя и подточенный под мои нужды.

Его можно вставить в код обработки кнопки, только предварительно тягать значение твоего поля и подставлять его вместо "Итого"
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0527 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.