Boucle pour défnir Array sous-totaux

Le
lydya Web
Bonjour,

Je souhaiterais dans une macro définir automatiquement les colonnes
qui constituent l'array de mes sous-totaux, le nombre de colonnes
étant variable, et je sèche

Selection.Subtotal GroupBy:=Range("Sal_Dpt").Column,
Function:=xlSum, _
TotalList:=Array(Arr), Replace:=True, PageBreaks:=False,
SummaryBelowData:=True

J'aimerais définir automatiquement ma variable (Arr) (cad la liste des
index de colonnes séparés par des virgules) à partir de la plage
suivante:
Range("Sal01012007").Column To Range("PlageSousTotaux").Columns.Count

Pouvez-vous m'aider?

Merci beaucoup,
Lydya
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
FFO
Le #22678041
Salut à toi
Quelque chose comme ceci :

For i = Range("Sal01012007").Column To
Range("PlageSousTotaux").Columns.Count
Arr = Arr & i & ","
Next
Arr = Mid(Arr, 1, Len(Arr) - 1)

en ayant défini tes plages "Sal01012007" et "PlageSousTotaux" de
maniére appropriée

Celà devrait faire

Dis moi !!!!!!
lydya Web
Le #22678191
On 15 oct, 14:29, FFO
Salut à toi
Quelque chose comme ceci :

For i = Range("Sal01012007").Column To
Range("PlageSousTotaux").Columns.Count
Arr = Arr & i & ","
Next
Arr = Mid(Arr, 1, Len(Arr) - 1)

en ayant défini tes plages "Sal01012007" et "PlageSousTotaux" de
maniére appropriée

Celà devrait faire

Dis moi !!!!!!




Merci pour ton aide qui m'avance déjà bien puisque la boucle tourne
bien (!) mais j'ai une erreur d'exécution "Subtotal method of range
class failed" sur la ligne du sous-total.
C'est peut-être à cause des guillemets autour des index de colonnes de
la variable Arr, que j'ai définie comme string...
Qu'en penses-tu?
Merci!!!
FFO
Le #22678261
Rebonjour à toi
Il m'est difficile de répondre comme celà sans avoir le code intégral
et le document
Peux tu me le fournir ici :
http://www.cijoint.fr/index.php
sans donnée confidentielle
Communiques moi le lien pour le récupérer
lydya Web
Le #22678421
C'est gentil mais il n'y a que des données confidentielles dans mon
classeur et de nombreuses macros... trop long d'élaguer.

Je vais tâcher de me débrouiller.

Merci encore.

Lydya


On 15 oct, 15:14, FFO
Rebonjour à toi
Il m'est difficile de répondre comme celà sans avoir le code intégr al
et le document
Peux tu me le fournir ici :http://www.cijoint.fr/index.php
sans donnée confidentielle
Communiques moi le lien pour le récupérer
lydya Web
Le #22679251
J'ai trouvé dans les archives ce code de Dave Peterson que j'ai pu
utiliser:
--
Option Explicit
Sub testme()
Dim myArr() As Long
Dim iCtr As Long
Dim MaxCols As Long

MaxCols = 12 'say

ReDim myArr(4 To MaxCols)

For iCtr = 4 To MaxCols
myArr(iCtr) = iCtr
Next iCtr

' ....TotalList:=myarr, ....

End Sub
--

Bonne soirée,
Lydya
Publicité
Poster une réponse
Anonyme