Помогите с макросом накопление+отсеивание

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
losyra02
Сообщения: 7
Зарегистрирован: 08 фев 2010, 17:42

Задача следующая:
1 лист - накопительная таблица
2 лист - лист с новой таблицей
столбцы у таблиц одинаковые
необходим макрос (желательно через кнопку) который будет новую таблицу присоединять к накопительной с конца, причём производя проверку по столбцу № ссудного счета ** (т.е. если номера повторяются, то по 2 разу значения в накопительную таблицу заносить не надо)
Вложения
x123321y.zip
(1.8 КБ) 13 скачиваний
Аватара пользователя
mc-black
Сообщения: 250
Зарегистрирован: 08 май 2008, 16:09
Откуда: Россия, Нижний Новгород
Контактная информация:

А что следует делать, когда № ссудного счета уже есть: игнорировать перенос строки, суммировать что-то с накоплением или еще как-то?
На заказ: VBA, Excel mc-black@yandex.ru
losyra02
Сообщения: 7
Зарегистрирован: 08 фев 2010, 17:42

mc-black

Игнорировать процесс переноски, т.е. не переносить вообще
Аватара пользователя
mc-black
Сообщения: 250
Зарегистрирован: 08 май 2008, 16:09
Откуда: Россия, Нижний Новгород
Контактная информация:

Код: Выделить всё

Option Explicit

Sub AddData()
    Dim src As Worksheet, dst As Worksheet
    Dim i As Long, j As Long, b As Boolean
    
    Set src = ThisWorkbook.Worksheets(2)
    Set dst = ThisWorkbook.Worksheets(1)
    
    i = 2
    Do While Not src.Cells(i, 3).Value = Empty
        j = 2
        b = True
        Do While Not dst.Cells(j, 3).Value = Empty
            If src.Cells(i, 3).Value = dst.Cells(j, 3).Value Then
                b = False
                Exit Do
            End If
            j = j + 1
        Loop
        
        If b Then
            src.Range(src.Cells(i, 1), src.Cells(i, 4)).Copy
            dst.Cells(j, 1).PasteSpecial xlPasteAll
        End If
        
        i = i + 1
    Loop
End Sub
[ATTACH]1210[/ATTACH] Рабочий пример
Вложения
add_data.zip
(7.32 КБ) 12 скачиваний
На заказ: VBA, Excel mc-black@yandex.ru
losyra02
Сообщения: 7
Зарегистрирован: 08 фев 2010, 17:42

Спасибо mc-black!!!
Ответить