powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вставка строк в лист
10 сообщений из 10, страница 1 из 1
Вставка строк в лист
    #35659558
ВК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Товарищи, подскажите пожалуйста, такая проблема.

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

т.е. есть вот это:
1234
1234
1234
1234

нужно вот так:
1234

1234

1234

1234

вручную замучаешься ибо сток очень много. С экселем не работал, неизвестен синтаксис.
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35660164
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну, если с ВБА у тебя проблемы, то можно так:
Потребуется 2 свободных столбца. В первом из них напротив твоих данных, которые надо разделить пустыми строками, вводишь формулу:
=ЕСЛИ(СТРОКА()/2=ОТБР(СТРОКА()/2);1;"")
В столбце рядом - формулу:
=ЕСЛИ(СТРОКА()/2=ОТБР(СТРОКА()/2);"";1)
Далее, выделяешь область с единичками так, чтобы охватить их все, и нажимаешь Ctrl+G, жмёшь кнопку "Выделить...", затем ставишь галочку "Формулы" и снимаешь галочку со слова "Текст" и жмёшь ОК.
Затем щёлкаешь на одной из выделенных ячеек правой клавишей и выбираешь "Добавить ячейки...", где ставишь галочку "cтроку". Далее - ОК.
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35660302
ВК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, помогает )
но неплохо бы было в ВБА в макрос это перевести

как там записать тогда do until EOF и безразмерный range? я работал с аксессом, в экселе же мне не известно
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35660481
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дай имя "ExtCol" любой ячейке промежуточного столбца. Любой ячейке в той строке, где у тебя начинаются данные, задай имя "FirstRow". Затем:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Sub test()
Dim TmpRng As Range
Set TmpRng = Cells([FirstRow].Row, [ExtCol].Column).Resize([FirstRow].End(xlDown).Row - [FirstRow].Row)
TmpRng.Resize( 1 ) = "=IF(ROW()/2=TRUNC(ROW()/2),"""",1)"
TmpRng.FillDown
Set TmpRng = TmpRng.SpecialCells(xlCellTypeFormulas, xlNumbers)
Union(TmpRng, TmpRng.Offset( 1 ,  1 )).EntireRow.Insert
End Sub
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35981600
Oliushka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А подскажите, как просто вставить новую строку со смещением вниз через ВБА?
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35982453
Lost Jonny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Oliushka,

Код: plaintext
1.
        Rows( 1 ).Select
    Selection.Insert Shift:=xlDown
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35985130
Oliushka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Lost Jonny,

У меня список. Нахожусь на какой-нибудь строке, нужно добавить новую строку между этой и следующей, т.е. строку ниже.
Написала вот так
Cells(a + 1, 2).EntireRow.Insert
работает.
У вас сложнее код. В чем разница?
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35985334
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oliushka,
этот код записан макрорекордером, чего и вам желаю
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35985623
Lost Jonny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PlanB,

Ну, задачку-то решил на вопрос :)
...
Рейтинг: 0 / 0
Вставка строк в лист
    #35986746
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lost Jonny,а кто спорит?
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вставка строк в лист
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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