Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поиск "правильного" столбца / 6 сообщений из 6, страница 1 из 1
01.03.2016, 18:07
    #39182908
kos20
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск "правильного" столбца
Всем привет!
Пишу небольшой макрос поиска данных на листе. Суть такова, есть шапка с ключевыми словами, я ищу номера столбцов. Все работает до тех пор когда Шапка = значению. Если ячейка (шапки) объединена, а значения нет, то, что естественно, происходит смещение. Пример на картинке. Поиском нашел, что Сумма это столбец 2, а по факту значения в столбце 4. Может кто сталкивался с таким. Или есть элегантное решение.
...
Рейтинг: 0 / 0
01.03.2016, 18:10
    #39182912
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск "правильного" столбца
kos20Поиском нашел, что Сумма это столбец 2, а по факту значения в столбце 4.
Найдя "столбец 2", надо получить адрес диапазона объединения. Если ячейка не объединена, то адрес будет адресом ячейки, иначе адресом диапазона. И поиск значений надо производить в первом случае в одном столбце, а во втором - в нескольких.
...
Рейтинг: 0 / 0
01.03.2016, 18:12
    #39182916
kos20
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск "правильного" столбца
Akina,
А как получить второй диапазон, плиз.
Я так у же сделал, на самом деле, но вот как границы второго получить?
...
Рейтинг: 0 / 0
01.03.2016, 18:49
    #39182951
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск "правильного" столбца
Код: vbnet
1.
2.
Range("b1").Select
Debug.Print Selection.Address
...
Рейтинг: 0 / 0
01.03.2016, 20:45
    #39183035
kos20
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск "правильного" столбца
Akina, спасибо. тупанул...
...
Рейтинг: 0 / 0
02.03.2016, 09:57
    #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
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поиск "правильного" столбца / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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