[Excel VBA] additions de plusieurs feuilles
PtitDab
-
Polux31 Messages postés 6917 Date d'inscription Statut Membre Dernière intervention -
Polux31 Messages postés 6917 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je vais essayer de vous expliquer mon problème:
je suis débutante en VBA et j'ai un fichier excel avec une feuille "résumé" dans laquelle je veux additionner des plages de cellules d'autres feuilles,
en bref, je veux que dans la cellule A1 de la feuille résumé, il y ait A1 de la feuille 2 + A1 de la feuille 3 ...
Le problème est que je le nombre de feuilles n'est pas connu à l'avance.
Voici le code que j'ai mais qui ne fonctionne pas:
Sub calcul()
Dim somme(5) As Variant
Dim i As Integer
Dim j As Integer
Dim n As Integer
n = ThisWorkbook.Worksheets.Count
For i = 0 To 4
For j = 1 To n
somme(i) = somme(i) + Worksheets(j).Range("A1:A5").Cells(i).Value
Next j
Next i
Range("A1:A5").Value = somme
End Sub
L'erreur provient de la ligne "somme(i)=somme(i)+....." le débogage renvoit "erreur définie par l'application ou par l'objet"
Merci pour votre aide si précieuse
je vais essayer de vous expliquer mon problème:
je suis débutante en VBA et j'ai un fichier excel avec une feuille "résumé" dans laquelle je veux additionner des plages de cellules d'autres feuilles,
en bref, je veux que dans la cellule A1 de la feuille résumé, il y ait A1 de la feuille 2 + A1 de la feuille 3 ...
Le problème est que je le nombre de feuilles n'est pas connu à l'avance.
Voici le code que j'ai mais qui ne fonctionne pas:
Sub calcul()
Dim somme(5) As Variant
Dim i As Integer
Dim j As Integer
Dim n As Integer
n = ThisWorkbook.Worksheets.Count
For i = 0 To 4
For j = 1 To n
somme(i) = somme(i) + Worksheets(j).Range("A1:A5").Cells(i).Value
Next j
Next i
Range("A1:A5").Value = somme
End Sub
L'erreur provient de la ligne "somme(i)=somme(i)+....." le débogage renvoit "erreur définie par l'application ou par l'objet"
Merci pour votre aide si précieuse
A voir également:
- [Excel VBA] additions de plusieurs feuilles
- Liste déroulante excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Word et excel gratuit - Guide
- Regrouper plusieurs feuilles excel en une seule - Guide
- Feuille de pointage excel - Télécharger - Tableur
2 réponses
Bonjour,
J'avoue ne pas avoir bien compris ce que tu cherchais à faire en lisant ton code.
Voilà 2 méthodes qui, je pense, peuvent t'aider.
A noter ici les méthodes parcourent les 6 premières lignes de la colonne A de chaque feuille sauf de la feuille "résumé". A toi de l'adapter si ça te convient.
Bon courage
;o)
J'avoue ne pas avoir bien compris ce que tu cherchais à faire en lisant ton code.
Voilà 2 méthodes qui, je pense, peuvent t'aider.
A noter ici les méthodes parcourent les 6 premières lignes de la colonne A de chaque feuille sauf de la feuille "résumé". A toi de l'adapter si ça te convient.
Sub test() Dim i As Long Dim j As Long For i = 1 To Worksheets.Count For j = 1 To 6 If Worksheets(i).Name <> "résumé" Then Worksheets("résumé").Cells(j, 1).Value = Worksheets("résumé").Cells(j, 1).Value + Worksheets(i).Cells(j, 1).Value End If Next j Next i End Sub Sub test2() Dim sh Dim j As Long For Each sh In Worksheets For j = 1 To 6 If sh.Name <> "résumé" Then Worksheets("résumé").Range("A" & j).Value = Worksheets("résumé").Range("A" & j).Value + sh.Range("A" & j).Value End If Next j Next sh End Sub
Bon courage
;o)
j'ai essayé ton code et ça fonctionne nickel
merci beaucoup
De rien, bon courage pour la suite
;o)