TotalList

Программирование на Visual Basic for Applications
Fugitive
Начинающий
Начинающий
 
Сообщения: 15
Зарегистрирован: 10.10.2006 (Вт) 14:48

TotalList

Сообщение Fugitive » 25.10.2006 (Ср) 1:35

Уважаемые, подскажите как быть, если кол-во столбцов с итогами заранее неизвестно:
Код: Выделить всё
   Worksheets(k).Range(rr2).Subtotal GroupBy:=1, Function:=xlSum, TotalList:=Array(1, 2), Replace:=True, PageBreaks:=False, _
        SummaryBelowData:=True


Можно ли передать строку в totalist с номерами столбцов или как-нубудь еще ?

Genyaa
Обычный пользователь
Обычный пользователь
 
Сообщения: 59
Зарегистрирован: 17.10.2006 (Вт) 13:46

Сообщение Genyaa » 25.10.2006 (Ср) 9:22

Можно.

Вместо Array(1,2) в аргументе можно испльзовать имя массива, содержащего номера столбцов, в которых должны быть составлены подитоги.

Этот массив можно создать и заполнить, как нужно, в любом месте программы до вызова Subtotal.

Например, чтобы подитоги были для всех заполненых столбцов на листе, кроме первого (при том, заранее неизвестно, сколько столбцов на листе):

Код: Выделить всё
Redim ar(1 to Worksheets(k).UsedRange.Columns.Count-1) as Integer
For i = 1 to Worksheets(k).UsedRange.Columns.Count-1
    ar(i) = i+1
next i
Worksheets(k).UsedRange.Subtotal GroupBy:=1, Function:=xlSum, _
     TotalList:=ar, _ '<<<<<<<<<=
     Replace:=True, PageBreaks:=False, _
     SummaryBelowData:=True
Всякое решение плодит новые проблемы.

Fugitive
Начинающий
Начинающий
 
Сообщения: 15
Зарегистрирован: 10.10.2006 (Вт) 14:48

Сообщение Fugitive » 25.10.2006 (Ср) 10:35

Большое спасибо !


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 79

    TopList  
cron