powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вопрос по перемещению selection (Excel)
6 сообщений из 6, страница 1 из 1
Вопрос по перемещению selection (Excel)
    #33629542
blah blah blah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно сделать это в макросе. Проблема заключается в том, что есть лист декларации, сформированный в Консультанте, и поля в нем типа "ИНН/КПП" состоят из туевой хучи ячеек. В эти поля надо вбивать данные.
Я сделал макрос, который разбивает переменную на символы (т.к. в декларации одна клетка - один символ/цифра), но не могу нормально их записать в нужные поля.
Есть пока только одна идея - юзать selection, но не могу понять, как его перемещать. Если будут какие другие идеи - буду благодарен
...
Рейтинг: 0 / 0
Вопрос по перемещению selection (Excel)
    #33629868
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Sub Макрос2()
    Dim rng As Range
    Dim c As Long, i As Long
    'находим слово "ИНН"
    Set rng = ActiveSheet.Cells.Find(What:="ИНН", LookIn:=xlValues, LookAt:= _
        xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True)
    c = rng.Column 'определяем столбец
    'определяем первую объединёную ячейку
    Do Until Cells(rng.Row, c).MergeCells
        c = c +  1 
    Loop
    'устанавливаем ссылку на объединенную ячейку
    Set rng = ActiveSheet.Range(Cells(rng.Row, c).MergeArea.Address)
    rng = i ' заполняем
    Do Until Not rng.MergeCells
        'устанавливаем ссылку на следующую объединенную ячейку
        Set rng = ActiveSheet.Range(rng.Offset( 0 ,  1 ).MergeArea.Address)
        rng = i +  1  ' заполняем
        i = i +  1 
    Loop
End Sub
даже если объединения разные будет работать.
P.S. и не нужен Selection
...
Рейтинг: 0 / 0
Вопрос по перемещению selection (Excel)
    #33629943
blah blah blah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема в том, что в декларациях "ИНН" встрчается очень часто. Тоже была идея сделать поиск по ключевым словам, но не в них дело.
А решение все равно подсказал :).
Вместо
Код: plaintext
c = rng.Column 'определяем столбец
просто задам индексы таких ячеек.
...
Рейтинг: 0 / 0
Вопрос по перемещению selection (Excel)
    #33629958
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blah blah blahПроблема в том, что в декларациях "ИНН" встрчается очень часто. Тоже была идея сделать поиск по ключевым словам, но не в них дело.
А решение все равно подсказал :).
Вместо
Код: plaintext
c = rng.Column 'определяем столбец
просто задам индексы таких ячеек.
Как это?
Можешь по подробнее?
Или пример.
...
Рейтинг: 0 / 0
Вопрос по перемещению selection (Excel)
    #33630129
blah blah blah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не совсем точно выразился...
Вместо этого
Код: plaintext
1.
2.
3.
4.
5.
6.
    c = rng.Column 'определяем столбец
    'определяем первую объединёную ячейку
    Do Until Cells(rng.Row, c).MergeCells
        c = c +  1 
    Loop
'устанавливаем ссылку на объединенную ячейку
    Set rng = ActiveSheet.Range(Cells(rng.Row, c).MergeArea.Address)
просто буду указывать индекс первой ячейки в нужной области, и с нее уже вести цикл.
Т.к. для каждого филиала (а их около 150) нужна отдельная декларация, поиском в строке пользоваться нецелесообразно (долго будет).
...
Рейтинг: 0 / 0
Вопрос по перемещению selection (Excel)
    #33630195
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
понял

вообщем-то определить уникальность строки можно
ну например слово "Приложение1" наврядли встречается дважды
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вопрос по перемещению selection (Excel)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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