powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поиск "правильного" столбца
6 сообщений из 6, страница 1 из 1
Поиск "правильного" столбца
    #39182908
kos20
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!
Пишу небольшой макрос поиска данных на листе. Суть такова, есть шапка с ключевыми словами, я ищу номера столбцов. Все работает до тех пор когда Шапка = значению. Если ячейка (шапки) объединена, а значения нет, то, что естественно, происходит смещение. Пример на картинке. Поиском нашел, что Сумма это столбец 2, а по факту значения в столбце 4. Может кто сталкивался с таким. Или есть элегантное решение.
...
Рейтинг: 0 / 0
Поиск "правильного" столбца
    #39182912
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kos20Поиском нашел, что Сумма это столбец 2, а по факту значения в столбце 4.
Найдя "столбец 2", надо получить адрес диапазона объединения. Если ячейка не объединена, то адрес будет адресом ячейки, иначе адресом диапазона. И поиск значений надо производить в первом случае в одном столбце, а во втором - в нескольких.
...
Рейтинг: 0 / 0
Поиск "правильного" столбца
    #39182916
kos20
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,
А как получить второй диапазон, плиз.
Я так у же сделал, на самом деле, но вот как границы второго получить?
...
Рейтинг: 0 / 0
Поиск "правильного" столбца
    #39182951
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
2.
Range("b1").Select
Debug.Print Selection.Address
...
Рейтинг: 0 / 0
Поиск "правильного" столбца
    #39183035
kos20
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina, спасибо. тупанул...
...
Рейтинг: 0 / 0
Поиск "правильного" столбца
    #39183295
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kos20, примерно так
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Sub bb()
Dim c As Range
  Set c = Rows(1).Find("сумма", , xlValues, xlPart)
  If c Is Nothing Then Exit Sub
  Set c = c.Offset(1).Resize(, c.MergeArea.Columns.Count).Find("*")
  If Not c Is Nothing Then MsgBox "числа в столбце " & c.Column
End Sub
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поиск "правильного" столбца
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]