Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.10.2010, 13:05   #1
Gvaridos
Пользователь
 
Регистрация: 26.10.2010
Сообщений: 32
Восклицание Создание пустой строки и копирование в неё содержимое предыдущей строки

Есть большой массив данных.
Как сделать макрос, чтобы после каждой непустой строки вставлялась пустая строка, в которую копировалась предыдущая строка.

Первоначальный вид:
1 80
2 47
3 62
4 30
5 23

Надо:
1 80
1 80
2 47
2 47
3 62
3 62
4 30
4 30
5 23
5 23


Помогите пожалуйста!
Gvaridos вне форума Ответить с цитированием
Старый 29.10.2010, 13:18   #2
R Dmitry
Форумчанин
 
Регистрация: 07.03.2010
Сообщений: 796
По умолчанию

Цитата:
Сообщение от Gvaridos Посмотреть сообщение
Есть большой массив данных.
Как сделать макрос, чтобы после каждой непустой строки вставлялась пустая строка, в которую копировалась предыдущая строка.

Первоначальный вид:
1 80
2 47
3 62
4 30
5 23

Надо:
1 80
1 80
2 47
2 47
3 62
3 62
4 30
4 30
5 23
5 23


Помогите пожалуйста!
если для vba то так

Sub dooble_val()
arr = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row).Value
ReDim arrF(1 To Cells(Rows.Count, 1).End(xlUp).Row * 2, 1 To 1)
j = 1
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
arrF(j, 1) = arr(i, 1)
arrF(j + 1, 1) = arr(i, 1)
j = j + 2
Next i
Range("B1:B" & Cells(Rows.Count, 1).End(xlUp).Row * 2) = arrF
End Sub
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234

Последний раз редактировалось R Dmitry; 29.10.2010 в 13:29. Причина: для столбца А
R Dmitry вне форума Ответить с цитированием
Старый 29.10.2010, 13:33   #3
R Dmitry
Форумчанин
 
Регистрация: 07.03.2010
Сообщений: 796
По умолчанию

для двумерного
Sub dooble_val()
arr = Range("A1:B" & Cells(Rows.Count, 1).End(xlUp).Row).Value
ReDim arrF(1 To Cells(Rows.Count, 1).End(xlUp).Row * 2, 1 To 2)
j = 1
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
arrF(j, 1) = arr(i, 1): arrF(j, 2) = arr(i, 2)
arrF(j + 1, 1) = arr(i, 1): arrF(j + 1, 2) = arr(i, 2)
j = j + 2
Next i
Range("C1:D" & Cells(Rows.Count, 1).End(xlUp).Row * 2) = arrF
End Sub
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234
R Dmitry вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка пустой строки в Word VanDo Помощь студентам 0 13.10.2010 14:34
перенос строки с пустой ячейки HospodySave Microsoft Office Excel 10 24.06.2010 07:16
Вставкка пустой строки в файл FroL25 Помощь студентам 3 01.06.2010 14:05
Удаление пустой строки ggxxx Microsoft Office Excel 2 30.04.2010 16:10
Копировать данные из предыдущей строки Viktor_Kotov Помощь студентам 4 14.04.2010 18:00