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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2014, 11:37   #1
amadeus017
Форумчанин
 
Регистрация: 28.05.2014
Сообщений: 158
По умолчанию заполнение пустых строк в таблице

Доброго времени суток!
Подскажите пожалуйста, как с помощью макроса заполнить пустые строки в табличной части.
Имеющиеся данные выгружаются из Access в Excel (в примере выделено жирным шрифтом), необходимо заполнить пустые строки (в примере заполнение выделено красным шрифтом)
простым копированием получается очень долго, т.к. таблицы могут содержать тысячи наименований.
(Нашел похожую тему и скопировал от туда макрос, но так как я с программированием не в дружбе, сломал голову как сделать так чтобы все работало, а не выдавало мне ошибок)

Оригинальный макрос к файлу "Задача №1"

Public Sub www()
Dim a, i&, n%
a = [a1].CurrentRegion.Value
For i = 3 To UBound(a, 1)
If a(i, 1) = "" Then
For n = 1 To 8
a(i, n) = a(i - 1, n)
Next
End If
Next
[a1:g1].Resize(UBound(a)) = a
End Sub

Ниже макрос, который я хотел применить к своему файлу "Реестр_www", но выдает ошибки:
Public Sub www()
Dim a, i&, n%
a = [a1].CurrentRegion.Value
For i = 7 To UBound(a, 1)
If a(i, 1) = "" Then
For n = 1 To 27
a(i, n) = a(i - 1, n)
Next
End If
Next
[a1:aa1].Resize(UBound(a)) = a
End Sub

(Заполнить надо пустые строки со столбика "A" по "AA"
Вложения
Тип файла: rar Задача №1.rar (7.2 Кб, 18 просмотров)
Тип файла: rar Реестр_www.rar (66.0 Кб, 9 просмотров)

Последний раз редактировалось amadeus017; 24.10.2014 в 11:50.
amadeus017 вне форума Ответить с цитированием
Старый 24.10.2014, 18:45   #2
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

Код:
Public Sub www()
    Dim a, i&, n%
    a = [a7].CurrentRegion.Value
    For i = 1 To UBound(a, 1)
        If a(i, 1) = "" Then
            For n = 1 To 27
                a(i, n) = a(i - 1, n)
            Next
        End If
    Next
    [a7].CurrentRegion.Value = a
End Sub
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru
alex77755 вне форума Ответить с цитированием
Старый 25.10.2014, 07:19   #3
amadeus017
Форумчанин
 
Регистрация: 28.05.2014
Сообщений: 158
По умолчанию

Доброго времен суток!
Ну что могу сказать...
УРАААА!!!! ВСЕ РАБОТАЕЕЕЕТ!!!!!!

Большое спасибо в решении данной задачи!
amadeus017 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление пустых строк в таблице Semen90 Microsoft Office Word 24 14.07.2022 12:28
Подфиксить макрос по удалению пустых строк в таблице. Vatorin Microsoft Office Word 0 21.10.2014 16:50
Удаление пустых столбцов в таблице umka777_89 Microsoft Office Word 6 31.05.2013 07:01
заполнение пустых строк в таблице pavelskv Microsoft Office Excel 11 08.02.2011 16:11
Заполнение пустых строк.. Balina Microsoft Office Excel 9 02.12.2009 11:49