Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Поиск текста в примечаниях - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Поиск текста в примечаниях
Гость Дата: Среда, 18.05.2011, 13:11 | Сообщение № 1
Группа: Гости
Добрый день!
Есть таблица, в ней существуют разделы. У каждого раздела есть строки, у которых есть примечания.
У каждого раздела примечания разные.
Вопрос: можно по примечаниям выделить строки и скопировать их на отдельный лист?
 
Ответить
СообщениеДобрый день!
Есть таблица, в ней существуют разделы. У каждого раздела есть строки, у которых есть примечания.
У каждого раздела примечания разные.
Вопрос: можно по примечаниям выделить строки и скопировать их на отдельный лист?

Автор - Гость
Дата добавления - 18.05.2011 в 13:11
Hugo Дата: Среда, 18.05.2011, 14:34 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3255
Репутация: 707 ±
Замечаний: 0% ±

2019
Макросом - можно.

Предваряя вопрос "как?" - перебором ячеек, анализом примечаний, копированием строк.



excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеМакросом - можно.

Предваряя вопрос "как?" - перебором ячеек, анализом примечаний, копированием строк.


Автор - Hugo
Дата добавления - 18.05.2011 в 14:34
Гость Дата: Среда, 18.05.2011, 14:50 | Сообщение № 3
Группа: Гости
Я нашел код, осуществляющий поиск указанного текста во всех примечаниях, но он выдает ошибку
в строках, содержаших Ме. Что можно придумать?

[vba]
Код
Private Sub SearchTextInComments()
iSearchText$ = "текст"

Dim iCell As Range
Set iCell = Me.UsedRange.Find _
(What:=iSearchText$, LookIn:=xlComments, LookAt:=xlPart)

If Not iCell Is Nothing Then
iAddress$ = iCell.Address
Do
iCell.Comment.Visible = True
Set iCell = Me.UsedRange.FindNext(After:=iCell)
Loop While Not iCell Is Nothing And iCell.Address <> iAddress$
End If
End Sub
[/vba]
 
Ответить
СообщениеЯ нашел код, осуществляющий поиск указанного текста во всех примечаниях, но он выдает ошибку
в строках, содержаших Ме. Что можно придумать?

[vba]
Код
Private Sub SearchTextInComments()
iSearchText$ = "текст"

Dim iCell As Range
Set iCell = Me.UsedRange.Find _
(What:=iSearchText$, LookIn:=xlComments, LookAt:=xlPart)

If Not iCell Is Nothing Then
iAddress$ = iCell.Address
Do
iCell.Comment.Visible = True
Set iCell = Me.UsedRange.FindNext(After:=iCell)
Loop While Not iCell Is Nothing And iCell.Address <> iAddress$
End If
End Sub
[/vba]

Автор - Гость
Дата добавления - 18.05.2011 в 14:50
Hugo Дата: Среда, 18.05.2011, 15:25 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3255
Репутация: 707 ±
Замечаний: 0% ±

2019
Да, точно, можно ведь и сразу искать в комментариях.
У меня этот код ошибок не даёт. Поместите его в модуль исследуемого листа.


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеДа, точно, можно ведь и сразу искать в комментариях.
У меня этот код ошибок не даёт. Поместите его в модуль исследуемого листа.

Автор - Hugo
Дата добавления - 18.05.2011 в 15:25
Гость Дата: Среда, 18.05.2011, 15:32 | Сообщение № 5
Группа: Гости
У меня с VBA не очень. Подскажите, что и куда нужно добавить в код, чтобы он копировал выбранные строки на отдельный лист?
 
Ответить
СообщениеУ меня с VBA не очень. Подскажите, что и куда нужно добавить в код, чтобы он копировал выбранные строки на отдельный лист?

Автор - Гость
Дата добавления - 18.05.2011 в 15:32
Hugo Дата: Среда, 18.05.2011, 15:53 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3255
Репутация: 707 ±
Замечаний: 0% ±

2019
В общем-то ничего особенно много добавлять не пришлось:

[vba]
Код
Private Sub SearchTextInComments()
Dim iSearchText$: iSearchText$ = "текст"

Dim iCell As Range, i As Long, iAddress$

With Workbooks.Add.Sheets(1)

Set iCell = Me.UsedRange.Find _
(What:=iSearchText$, LookIn:=xlComments, LookAt:=xlPart)

If Not iCell Is Nothing Then
iAddress$ = iCell.Address
Do
i = i + 1
Rows(iCell.Row).Copy .Cells(i, 1)
'iCell.Comment.Visible = True
Set iCell = Me.UsedRange.FindNext(After:=iCell)
Loop While Not iCell Is Nothing And iCell.Address <> iAddress$
End If

End With
End Sub
[/vba]


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеВ общем-то ничего особенно много добавлять не пришлось:

[vba]
Код
Private Sub SearchTextInComments()
Dim iSearchText$: iSearchText$ = "текст"

Dim iCell As Range, i As Long, iAddress$

With Workbooks.Add.Sheets(1)

Set iCell = Me.UsedRange.Find _
(What:=iSearchText$, LookIn:=xlComments, LookAt:=xlPart)

If Not iCell Is Nothing Then
iAddress$ = iCell.Address
Do
i = i + 1
Rows(iCell.Row).Copy .Cells(i, 1)
'iCell.Comment.Visible = True
Set iCell = Me.UsedRange.FindNext(After:=iCell)
Loop While Not iCell Is Nothing And iCell.Address <> iAddress$
End If

End With
End Sub
[/vba]

Автор - Hugo
Дата добавления - 18.05.2011 в 15:53
Alex_ST Дата: Среда, 18.05.2011, 15:54 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3209
Репутация: 609 ±
Замечаний: 0% ±

2003
Чтобы не было ошибки либо, как советовал Игорь, поместите код в модуль листа, либо замените Me не ActiveSheet
Но ведь вам, кажется, нужно было не определённый текст искать, а
Quote (Гость)
Есть таблица, в ней существуют разделы. У каждого раздела есть строки, у которых есть примечания.
У каждого раздела примечания разные.
Вопрос: можно по примечаниям выделить строки и скопировать их на отдельный лист?

Ну так дайте ссылку на файл-пример таблицы.
Не нам же её за вас придумывать. Тем более, что понятия "Раздел" в Экселе не существует и мы можем только гадать, что вы имеете в виду...



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеЧтобы не было ошибки либо, как советовал Игорь, поместите код в модуль листа, либо замените Me не ActiveSheet
Но ведь вам, кажется, нужно было не определённый текст искать, а
Quote (Гость)
Есть таблица, в ней существуют разделы. У каждого раздела есть строки, у которых есть примечания.
У каждого раздела примечания разные.
Вопрос: можно по примечаниям выделить строки и скопировать их на отдельный лист?

Ну так дайте ссылку на файл-пример таблицы.
Не нам же её за вас придумывать. Тем более, что понятия "Раздел" в Экселе не существует и мы можем только гадать, что вы имеете в виду...

Автор - Alex_ST
Дата добавления - 18.05.2011 в 15:54
Гость Дата: Среда, 18.05.2011, 16:47 | Сообщение № 8
Группа: Гости
Спасибо, с ActiveSheet ошибку не выдает, но оказалось в поиске ничего не находит, просто создает пустую книгу. Ссылку на файл выложить не получается sad .
 
Ответить
СообщениеСпасибо, с ActiveSheet ошибку не выдает, но оказалось в поиске ничего не находит, просто создает пустую книгу. Ссылку на файл выложить не получается sad .

Автор - Гость
Дата добавления - 18.05.2011 в 16:47
Гость Дата: Среда, 18.05.2011, 16:54 | Сообщение № 9
Группа: Гости
Все заработало!!!!
Спасибо Вам за помощь!
 
Ответить
СообщениеВсе заработало!!!!
Спасибо Вам за помощь!

Автор - Гость
Дата добавления - 18.05.2011 в 16:54
Нострадамус обыкновенный Дата: Пятница, 05.04.2013, 12:11 | Сообщение № 10
Группа: Гости
Ребят, помогите!!!!
Нужна кнопка поиска в примечаниях!
Основу взял с сайта http://excelvba точка ru/code/HighlightText Там поиск идет на странице, а не в примечаниях, как мне надо....
пытался дополнить ее командами из этой темы:

[vba]
Код
Dim iCell As Range
Set iCell = Me.UsedRange.Find _
(What:=iSearchText$, LookIn:=xlComments, LookAt:=xlPart)
[/vba]

но ничего не получается...

я нуб!
 
Ответить
СообщениеРебят, помогите!!!!
Нужна кнопка поиска в примечаниях!
Основу взял с сайта http://excelvba точка ru/code/HighlightText Там поиск идет на странице, а не в примечаниях, как мне надо....
пытался дополнить ее командами из этой темы:

[vba]
Код
Dim iCell As Range
Set iCell = Me.UsedRange.Find _
(What:=iSearchText$, LookIn:=xlComments, LookAt:=xlPart)
[/vba]

но ничего не получается...

я нуб!

Автор - Нострадамус обыкновенный
Дата добавления - 05.04.2013 в 12:11
Нострадамус обыкновенный Дата: Пятница, 05.04.2013, 12:18 | Сообщение № 11
Группа: Гости
Цитата (Нострадамус обыкновенный)
Основу взял с сайта http://excelvba точка ru/code/HighlightText Там поиск идет на странице, а не в примечаниях, как мне надо....

Я расшифрую для тех, кто не может туда попасть или это могут стереть.
Я думаю, поиск в примечаниях пригодится не только мне, в связи с этим выложу исходный код кнопки:

[vba]
Код
Option Compare Text

Sub Find_n_Highlight()
On Error Resume Next: Err.Clear
Dim ra As Range, cell As Range, res, txt$, v, pos&
res = InputBox("Введите наименование организации, которую необходимо найти в календаре", "Поиск текста", "насхульян")
If VarType(res) = vbBoolean Then Exit Sub ' нажата кнопка ОТМЕНА
txt$ = Trim(res): If Len(txt) = 0 Then Exit Sub ' текст не введен, или состоит из пробелов

Set ra = Range([A2], Range("A" & Rows.Count).End(xlUp)) ' диапазон для поиска
Application.ScreenUpdating = False
ra.Font.Color = 0: ra.Font.Bold = 0 ' сброс цветового выделения

For Each cell In ra.Cells ' перебираем все ячейки
pos = 1
If cell.Text Like "*" & txt & "*" Then
arr = Split(cell.Text, txt, , vbTextCompare) ' разбивает текст ячейки на части
If UBound(arr) > 0 Then ' если подстрока найдена
For Each v In arr ' перебираем все вхождения
pos = pos + Len(v) ' начальная позиция
With cell.Characters(pos, Len(txt))
.Font.ColorIndex = 3 ' выделяем цветом
.Font.Bold = True ' и полужирным начертанием
End With
pos = pos + Len(txt)
Next v
End If
End If
Next cell
End Sub
[/vba]
 
Ответить
Сообщение
Цитата (Нострадамус обыкновенный)
Основу взял с сайта http://excelvba точка ru/code/HighlightText Там поиск идет на странице, а не в примечаниях, как мне надо....

Я расшифрую для тех, кто не может туда попасть или это могут стереть.
Я думаю, поиск в примечаниях пригодится не только мне, в связи с этим выложу исходный код кнопки:

[vba]
Код
Option Compare Text

Sub Find_n_Highlight()
On Error Resume Next: Err.Clear
Dim ra As Range, cell As Range, res, txt$, v, pos&
res = InputBox("Введите наименование организации, которую необходимо найти в календаре", "Поиск текста", "насхульян")
If VarType(res) = vbBoolean Then Exit Sub ' нажата кнопка ОТМЕНА
txt$ = Trim(res): If Len(txt) = 0 Then Exit Sub ' текст не введен, или состоит из пробелов

Set ra = Range([A2], Range("A" & Rows.Count).End(xlUp)) ' диапазон для поиска
Application.ScreenUpdating = False
ra.Font.Color = 0: ra.Font.Bold = 0 ' сброс цветового выделения

For Each cell In ra.Cells ' перебираем все ячейки
pos = 1
If cell.Text Like "*" & txt & "*" Then
arr = Split(cell.Text, txt, , vbTextCompare) ' разбивает текст ячейки на части
If UBound(arr) > 0 Then ' если подстрока найдена
For Each v In arr ' перебираем все вхождения
pos = pos + Len(v) ' начальная позиция
With cell.Characters(pos, Len(txt))
.Font.ColorIndex = 3 ' выделяем цветом
.Font.Bold = True ' и полужирным начертанием
End With
pos = pos + Len(txt)
Next v
End If
End If
Next cell
End Sub
[/vba]

Автор - Нострадамус обыкновенный
Дата добавления - 05.04.2013 в 12:18
Andr-rnd Дата: Пятница, 05.04.2013, 15:52 | Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Меня тоже интересует эта тема! Люди посоветуйте что-нибудь!!!!!
 
Ответить
СообщениеМеня тоже интересует эта тема! Люди посоветуйте что-нибудь!!!!!

Автор - Andr-rnd
Дата добавления - 05.04.2013 в 15:52
RAN Дата: Пятница, 05.04.2013, 21:09 | Сообщение № 13
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Цитата (Andr-rnd)
Люди посоветуйте что-нибудь!!!!!

Советую. Попейте пива. smile


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Суббота, 06.04.2013, 00:15
 
Ответить
Сообщение
Цитата (Andr-rnd)
Люди посоветуйте что-нибудь!!!!!

Советую. Попейте пива. smile

Автор - RAN
Дата добавления - 05.04.2013 в 21:09
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!