powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VBA+Excel-группировка данных
10 сообщений из 10, страница 1 из 1
VBA+Excel-группировка данных
    #34947504
avdj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача на мой взгляд интересная: Имеем на листе данные которые необходимо сгруппировать в разрезе некоторых полей и при необходимости снимать с этих данных группировку(восстанавливать исходник). Пример:
Москва 1000
Москва 1500
Киев 1000
Киев 1500
Группируем, на листе имеем
Москва 2500
Киев 2500
Разгруппировали, на листе имеем
Москва 1000
Москва 1500
Киев 1000
Киев 1500
Я прекрасно понимаю, что задача под эксель как то не очень...
Но надо уважить заказчика...
Все что пока придумал, иметь два набора(не активный скрывать с листа) - исходный и динамически группируемый, который формируется и показыватся по запросу юзера
Есть идеи? Поделитесь.
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34947907
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приложите Excel файл с примером.
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34949299
Фотография VladConn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Меню Data/Subtotals. Запишите макрос, если надо. Только там без разрезов. Просто по полям.
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34950273
avdj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VladConnМеню Data/Subtotals. Запишите макрос, если надо. Только там без разрезов. Просто по полям.
Я что-то не въеду как они группируются.....

Файл с примером во вложении
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34950453
Фотография Fatty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Канделябром тебя по бакенбардам чтоб не
группировал ячейки с денежными суммами
Разоришь контору

~'J'~
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34950685
Wasup!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А чем сводные таблицы не подходят (данные->сводная таблица)?
Отдельно получаются сгруппированные данные, отдельно исходные. При желании исходные данные можно разместить на отдельном листе и скрывать.
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34950752
Фотография klen_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ещё вариант, группировка и подсуммирование
только надо побеспокоиться о границах нужного столбца
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Sub Макрос1()

Dim k As Long, ins_ As Boolean

Dim stroki As Range, rng As Range, summ
Set stroki = ThisWorkbook.Worksheets("Sheet1").Range("A1", "A11")
 
    For Each rng In stroki
        
        If rng.Value = rng.Offset( 1 ).Value Then
           k = k +  1 
           ins_ = False
           summ = summ + rng.Offset(,  1 ).Value
        ElseIf ins_ = False Then
           ins_ = True
           If InStr( 1 , rng.Offset( 1 ).Value, "итого", vbTextCompare) =  0  Then
                rng.Offset( 1 ).EntireRow.Insert
                stroki.Range(rng.Offset(-k).Row & ":" & rng.Row).Group
           End If
           rng.Offset( 1 ).Value = "итого по " & rng.Value
           rng.Offset( 1 ,  1 ).Value = summ + rng.Offset(,  1 ).Value
           summ =  0 
           k =  0 
        End If
        
    Next
End Sub
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34950896
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы формулу вставлял вместо значения.

Код: plaintext
rng.Offset( 1 ,  1 ).Formula = "=Sum(" & rng.Offset(-k,  1 ).Resize(k +  1 ).Address( 0 ,  0 ) & ")"
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34951134
Фотография klen_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет! Deggasad
В этом примере приходиться анализировать слово "итого", чтобы не сделать двойную группировку,
и не вставить лишнюю пустую строку. (в случае если user будет выполнять макрос несколько раз).

Может быть есть способ или свойство, сделать этот анализ по другому?
...
Рейтинг: 0 / 0
VBA+Excel-группировка данных
    #34953470
avdj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FattyКанделябром тебя по бакенбардам чтоб не
группировал ячейки с денежными суммами
Разоришь контору

~'J'~

Сенкс. Это хорошая база - будем посмотреть!
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VBA+Excel-группировка данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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