Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.69/26: Рейтинг темы: голосов - 26, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 02.11.2013
Сообщений: 14

Поиск по всем листам

02.11.2013, 16:34. Показов 5702. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В VB почти нечего не шарю...говорю сразу)
Проблема: нужно сделать поиск ячейки в определенном диапазоне на ВСЕХ листах.
если можно, укажите некоторые комментарии.

p.s. Вся задача заключается в том что бы, создать макрос который проверяет не попадает ли один и тот же преподаватель в несколько групп на факультете на одной и той же паре.

Заранее спасибо

Кой что попытался набросать...но ток по 1 листу работает(

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub search_main()
Dim rng As Range ' область
Dim name1
    With Worksheets("1 курс")
    Set rng = .Range("D12:X11")
    name1 = Range("D11").Value
For Each cell In rng
If cell = name1 Then
 
MsgBox ("Ошибка")
cell.Interior.Color = RGB(255, 255, 0)
 
End If
 
Next cell
End With
End Sub
Вложения
Тип файла: rar rozklad.rar (25.8 Кб, 31 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.11.2013, 16:34
Ответы с готовыми решениями:

Как написать поиск по всем листам
При нажатии на кнопку поиск пользователь вводит часть фразы или код,происходит поиск по всем листам и выводит результат.пользователь...

Поиск по столбцу A:A по всем листам документа кроме первого
Здравствуйте! имею код поиска заданного значения по столбцу активного листа, Dim poz As Range, rng As Range, Adr As...

БД в Excel: организовать поиск по всем листам и по нескольким критериям
Добрый вечерок! Помогите, пожалуйста.... Есть база данных в Excel. Пока использовалась примитивная фильтрация, но жутко неудобно,...

25
0 / 0 / 0
Регистрация: 02.11.2013
Сообщений: 14
20.11.2013, 11:05  [ТС]
Студворк — интернет-сервис помощи студентам
Подскажите пожалуйста, как сделать что бы аудитории типа (25/40) тоже помещались в коллекцию по отдельности?
Знакомый говорил что в VB есть какая то функция что считывает значение от заданного символа (вроде Right, Left)
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
20.11.2013, 11:22
В таком случае тут нужен split()
0
0 / 0 / 0
Регистрация: 02.11.2013
Сообщений: 14
20.11.2013, 11:28  [ТС]
Hugo121, можете полностью написать строку?)
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
20.11.2013, 12:00
Тут не строку нужно писать, а смотреть как это интегрировать в макрос.
Могу, но сейчас не могу

Добавлено через 10 минут
Вот вроде так, но не проверял всё ли выявило:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub search_main()
    Dim sh As Worksheet
    Dim col As Object, arr, el, elel
    'arr = Split("D E G H J K M N")
    arr = Split("F I L O R")
    On Error Resume Next
 
    'For i = 9 To 57 Step 2
    For i = 8 To 56 Step 2
        Set col = New Collection
        For Each sh In Worksheets
            For Each el In arr
                t = sh.Range(el & i).Value
                If Len(t) Then
                    For Each elel In Split(t, "/")
                        col.Add elel, CStr(elel)
                        If Err Then Debug.Print sh.Name & "-" & el & i & "-" & elel: Err.Clear
                    Next
                End If
            Next
        Next
    Next
End Sub
1
0 / 0 / 0
Регистрация: 02.11.2013
Сообщений: 14
21.11.2013, 00:02  [ТС]
Hugo121, спасибо, всё вроде бы работает норм.
Еще один момент...как можно сделать что бы все совпадение выводило в одном сообщение в конце?
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
21.11.2013, 01:11
Можно собирать в строку с переводом строки в конце, затем вывести в месиджбокс. Но - во-первых всё может не поместиться по высоте, во-вторых неудобно использовать.
Я бы собирал в коллекцию, а её в конце циклом выводил в новую созданную книгу.

Добавлено через 5 минут
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Sub search_main()
    Dim sh As Worksheet
    Dim col As Object, arr, el, elel
    Dim outcol As New Collection
    'arr = Split("D E G H J K M N")
    arr = Split("F I L O R")
    On Error Resume Next
 
    'For i = 9 To 57 Step 2
    For i = 8 To 56 Step 2
        Set col = New Collection
        For Each sh In Worksheets
            For Each el In arr
                t = sh.Range(el & i).Value
                If Len(t) Then
                    For Each elel In Split(t, "/")
                        col.Add elel, CStr(elel)
                        If Err Then outcol.Add sh.Name & "-" & el & i & "-" & elel: Err.Clear
                    Next
                End If
            Next
        Next
    Next
 
    If outcol.Count > 0 Then
        i = 0
        With Workbooks.Add(1).Sheets(1)
            For Each el In outcol
                i = i + 1
                .Cells(i, 1) = el
            Next
        End With
    End If
 
End Sub
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.11.2013, 01:11

Произвести поиск по всем листам определённого слова в определенном столбце
Помогите плиз Задачка - в ёкселе провести поиск по всем листам для поиска определённого слова в определёёном столбце и все совпадения(...

Поиск значений по всем листам книги и вывод имени листа/столбца для всех совпадений
Всем здравствуйте. Прошу помощи профессионалов. Прикрепил файл, Есть задача - необходимо сделать поиск значений, заданных в столбце A1...

Проверка по всем листам книги
Здравствуйте у меня возникла проблемка , с vba я на вы , имеется макрос который делает проверку по первому листу а нужен макрос что бы...

Как организовать поиск по нескольким листам?
Исходные данные. Есть книга, в ней есть листы ну допустим: Бытовая электроника, строительные материалы, Инструмент. В этой же книги есть...

Поиск частичных совпадений по листам с выборкой
Помогите пожалуйста найти ошибки в коде. Private Sub CommandButton1_Click() ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru