Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.01.2011, 09:47   #11
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Никак. Во время редактирования ячейки макросы не выполняются.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 30.01.2011, 18:04   #12
vfv
Пользователь
 
Регистрация: 28.07.2009
Сообщений: 54
По умолчанию

Подскажите как из приведённого выше макроса в этой теме
Код:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim X As Range, r As Range, fA$

If Target.Text <> "" Then

Set X = Sheets(2).UsedRange.Find(Target.Tex t)

If Not X Is Nothing Then

Set r = X

fA = X.Address

Do

Set X = Sheets(2).UsedRange.FindNext(X)

Set r = Application.Union(r, X)

Loop While Not X Is Nothing And X.Address <> fA

Sheets(2).Activate

r.Select

Cancel = True

End If: End If

End Sub

сделать макрос в основном модуле,а не в модуле листа, и поиск чтобы был путём выделения ячейки и нажатия на кнопку
vfv вне форума Ответить с цитированием
Старый 30.01.2011, 18:37   #13
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

А чем не нравится по двойному клику? Меньше телодвижений.
В общий модуль:
Код:
Sub AnyName()
    Dim X As Range, r As Range, fA$
    If activecell.Text <> "" Then
        Set X = Sheets(2).UsedRange.Find(activecell.Text)
        If Not X Is Nothing Then
            Set r = X
            fA = X.Address
            Do
                Set X = Sheets(2).UsedRange.FindNext(X)
                Set r = Application.Union(r, X)
            Loop While Not X Is Nothing And X.Address <> fA
            Sheets(2).Activate
            r.Select
        End If: End If
End Sub
Ну и назначайте макрос кнопке. Если надо поиск на любом листе -
замените в тексте Sheets(2) на activesheet.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 30.01.2011, 18:59   #14
vfv
Пользователь
 
Регистрация: 28.07.2009
Сообщений: 54
По умолчанию

Объясняю зачем мне это нужно?
Код в модуле листа это хорошо и удобно.Но у меня есть много книг xls в одной папке и нужно во все эти книги вставить в листы этот код листа.Экспортировать код листа кудато у меня получается.Но вот потом импортировать в те книги,которые мне нужны, нет. Почему то при импорте модули листа превращаются в Class модули,а если импортировать основные модули,то всё получается.
vfv вне форума Ответить с цитированием
Старый 30.01.2011, 21:15   #15
vfv
Пользователь
 
Регистрация: 28.07.2009
Сообщений: 54
По умолчанию

А если усложнить задачу:
Чтобы по значению любой выделенной ячейки лист1 выделялись ячейки с такими же значениями на других листах.
Понимаю,что надо сделать циклом,но не пойму как запоминать значения на лист1 ,чтобы их искать потом на других листах.
vfv вне форума Ответить с цитированием
Старый 30.01.2011, 22:00   #16
Uralmaster
Форумчанин
 
Регистрация: 21.01.2011
Сообщений: 118
По умолчанию

Можно ли как-то сделать поиск если искомые данные формируются за счет формул типа =Исх!D6 - поиск видимо воспринимает только формулы а не значения формируемые этими формулами
Вложения
Тип файла: rar Формула поиска v2.rar (15.4 Кб, 7 просмотров)
Uralmaster вне форума Ответить с цитированием
Старый 30.01.2011, 22:13   #17
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Можно.
Код:
Public Sub Searsh()
' Макрос записан 30.01.2011 (Sergey)
    Cells.Find(What:=[C4], After:=ActiveCell, LookIn:=xlValues, LookAt _
        :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
        False, SearchFormat:=False).Activate
End Sub
Но Вы бы и сами могли почитать справку по Find.
Вложения
Тип файла: rar Формула(почемуФормула).rar (16.3 Кб, 8 просмотров)
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728

Последний раз редактировалось kuklp; 30.01.2011 в 22:17.
kuklp вне форума Ответить с цитированием
Старый 31.01.2011, 02:09   #18
Uralmaster
Форумчанин
 
Регистрация: 21.01.2011
Сообщений: 118
По умолчанию

вопрос еще один как сделать так чтоб искал значение только в одном столбце например в столбце "С" ?
Uralmaster вне форума Ответить с цитированием
Старый 31.01.2011, 09:15   #19
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Цитата:
Сообщение от Uralmaster Посмотреть сообщение
вопрос еще один как сделать так чтоб искал значение только в одном столбце например в столбце "С" ?
Public Sub Searsh()
' Макрос записан 30.01.2011 (Sergey)
Columns("C:C").Find(What:=[C4], After:=ActiveCell, LookIn:=xlValues, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
End Sub
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 31.01.2011, 09:32   #20
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Цитата:
Сообщение от vfv Посмотреть сообщение
Чтобы по значению любой выделенной ячейки лист1 выделялись ячейки с такими же значениями на других листах.
...,но не пойму как запоминать значения на лист1 ,чтобы их искать потом на других листах.
Хватит уже вам. Сколько можно жевать эту тему.
Вложения
Тип файла: rar Формула поиска v3_1.rar (18.9 Кб, 15 просмотров)
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728

Последний раз редактировалось kuklp; 31.01.2011 в 09:38.
kuklp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенос на другой лист по значению столбца ElenaNTro Microsoft Office Excel 5 17.03.2011 14:50
Название листа, по значению ячейки kzld Microsoft Office Excel 1 11.09.2010 12:03
Переход на другой лист книги svetly12 Microsoft Office Excel 1 13.06.2010 14:54
Копирование данных с одного листа на другой по значению первого столбца Lis000iq Microsoft Office Excel 11 07.03.2010 13:34
Переход на новый лист в VBA Юнлинг Microsoft Office Excel 7 05.12.2008 10:02