Formule Excel

Résolu
Bonjour,

actuellement je fais un travail sous excel et j'aurais besoin d'une formule ( si elle existe :')).

j'ai dans un premier temps 200 feuilles avec divers informations dessu.
puis j'ai une 201 feuille qui se nomme "recap".
sur cette feuille "recap" j'ai besoin que toutes les cellules C13 de mes 200 feuilles y soit indiqués

y'a t-il une formule pour cela ?

Cordialement
Configuration: Windows XP
Firefox 2.0.0.9

24 réponses

Résumé de la discussion

Récupération des valeurs des cellules C13 sur 200 feuilles Excel vers une feuille récapitulative nommée 'recap', afin d'obtenir soit une liste soit une somme facilement exploitable. Plusieurs réponses proposent des approches VBA, notamment une macro qui additionne les valeurs C13 de chaque feuille dans C13 de la feuille 'recap', et une autre qui liste les noms des feuilles avec leur valeur. D'autres échanges évoquent des boutons ou des commandes simples, mais la solution fonctionnelle dépend de l'objectif : affichage listé ou somme agrégée des C13 dans le récap. En cas de besoin, le choix entre listing et somme peut être basculé facilement en adaptant le code ou la cellule de destination, selon le besoin.

Bobot (l’IA à votre service)
  1. Contributeur
    De rien... :-)
    Tu penseras à mettre la discussion en résolu stp ?
    merci
    0
    1. problème resolu grand merci a toi eric :)
      0
      1. Contributeur
        Bonsoir,

        Dans le menu 'Affichage / Barres d'outils...' tu dois avoir 'Boite à outils Contrôles' de coché.
        Sur ta feuille RECAP tu dessines ton bouton, tu double-cliques dessus pour ouvrir VBA, et dans la zone code (à droite), entre Sub et End Sub tu colles toutes les lignes à l'exception de sub... et end sub.
        Tu n'as plus qu'à changer le libelléBonsoir,

        Dans le menu 'Affichage / Barres d'outils...' tu dois avoir 'Boite à outils Contrôles' de coché.
        Sur ta feuille RECAP tu dessines ton bouton, tu double-cliques dessus pour ouvrir VBA, et dans la zone code (à droite), entre Sub et End Sub tu colles toutes les lignes à l'exception de sub... et end sub.
        Mais les lignes
                    'copier les valeurs de C13 colonne B
                    wsRecap.Range("B1").Offset(j, 0).Value = Worksheets(i).Range("C13").Value
                    'copier les valeurs de B4 colonne C
                    wsRecap.Range("C1").Offset(j, 0).Value = Worksheets(i).Range("B4").Value

        sont des exemples !!!!
        Adapte à tes besoins.
        Tu n'as plus qu'à changer le libellé de ton bouton et tester en désactivant le mode construction en cliquant sur l'icone 'equerre, regle, crayon'.

        eric
        0
        1. Bonjour eric

          Donc si je comprends bien je dois juste mettre sa :
          Private Sub CommandButton1_Click()
          Dim i As Integer, j As Integer, ws As Worksheet
          Set wsRecap = Worksheets(RECAP)
          j = 0

          For i = 1 To Sheets.Count
          If LCase(Worksheets(i).Name) <> LCase(wsRecap.Name) Then
          j = j + 1
          'copier les noms des feuilles en colonne A
          wsRecap.Range("A1").Offset(j, 0).Value = Worksheets(i).Name
          'copier les valeurs de C13 colonne B
          wsRecap.Range("B1").Offset(j, 0).Value = Worksheets(i).Range("A3").Value
          'copier les valeurs de B4 colonne C
          wsRecap.Range("C1").Offset(j, 0).Value = Worksheets(i).Range("B4").Value
          ' etc
          End If
          Next i
          wsRecap = Nothing
          End Sub

          Je comprends pas la suite car j'ai fais copier coller avec la modifictation mais que dois-je fias apres ?

          Coridalement
          0
          1. Contributeur
            Bonsoir,

            Je ne sais pas si tu as avancé mais voici un code que tu peux mettre sur ton bouton.
            Ca t'inscrit en colonne A les noms de feuilles, et en colonnes B, C, ... les valeurs des celulles choisies de toutes les autres feuilles du classeur.

            Private Sub CommandButton1_Click()
                Dim i As Integer, j As Integer, ws As Worksheet
                Set wsRecap = Worksheets("recap") 'mettre le nom exact de la feuille récapitulative
                j = 0
                
                For i = 1 To Sheets.Count
                    If LCase(Worksheets(i).Name) <> LCase(wsRecap.Name) Then
                        j = j + 1
                        'copier les noms des feuilles en colonne A
                        wsRecap.Range("A1").Offset(j, 0).Value = Worksheets(i).Name
                        'copier les valeurs de C13 colonne B
                        wsRecap.Range("B1").Offset(j, 0).Value = Worksheets(i).Range("A3").Value
                        'copier les valeurs de B4 colonne C
                        wsRecap.Range("C1").Offset(j, 0).Value = Worksheets(i).Range("B4").Value
                        ' etc
                    End If
                Next i
                wsRecap = Nothing
            End Sub


            eric
            1
            1. je cherches en vain je n'est aucune base en macro je trouves la macro qu'il me faudrais si quelqu'un a du temps a me consacrer je suis partant ^^ j'adore apprendre de nouvelle chose :)
              0
              1. Eriiic, oui tu as raison, mais je ne savais pas ce qu'il voulait exactement au début, ni comment était articulé son fichier. Ta syntaxe est meilleure.

                Mais effectivement une macro (bien que je n'aime pas trop les macros) est plus appropriée.

                Lapologie, tu devrais trouver sans trop de problème comment réaliser une macro en effectuant une recherche sur le net.

                Bon courage,

                ;o)

                Polux
                0
                1. enfaite sur mes 200 feuilles il y aurais tourjour en I13 une date. et je souhaites que sur ma feuille recap toute les dates de mes 200 feuilles y soient indiqué les unes a la suites des autres. Sur ma feuille "recap" il y a d'autre cellule de mes 200 feuilles qui doivent etre repertorier.

                  cordialement
                  0
                  1. Contributeur
                    Bonjour,

                    lapologie:
                    C'est une macro qu'il faut que tu ajoutes, mais là je n'ai pas trop le temps d'expliquer comment faire
                    polux:
                    Il me semble qu'il veut récuperer toutes les dates, pas la somme...
                    Qcq chose comme :
                    Worksheets("recap").Range("A1").Offset(i,0).Value = Worksheets(i).Range("C13").Value
                    serait plus approprié non ?

                    eric
                    0
                    1. il faut adapter le code :

                      Private Sub CommandButton1_Click()
                      Dim i As Integer
                      For i = 1 To Sheets.Count - 1
                      Worksheets(201).Range("I13").Value = Worksheets(201).Range("I13").Value + " " + Worksheets(i).Range("I13").Value
                      Next i
                      End Sub

                      Voilà toutes les dates vont s'afficher dans la cellule I13 de la feuille 201.
                      0
                      1. c'est censé s'affcihé ou toute les dates de mes 200 feuilles ? ya ecrit sa c'est normal ? :
                        Private Sub CommandButton1_Click()
                        Dim i As Integer

                        For i = 1 To Sheets.Count - 1
                        Worksheets(201).Range("C13").Value = Worksheets(201).Range("C13").Value + Worksheets(i).Range("C13").Value
                        Next i
                        End Sub
                        0
                        1. tu sauvegardes, tu enlève le mode création et tu cliques sur le bouton
                          0
                          1. j'ai crée mon boutton j'ai double cliqué dessu y a une fenetre blanche qui est venu j'ai coller les 4 lignes et ensuite je fais quoi ?
                            0
                            1. dans la barre de menu -> Affichage -> Barre d'outils, cocher Visual Basic ...

                              Ensuite, cliques sur "Boite à outils Contrôles" (le marteau et la clé) et sur "Mode création" (l'équerre et le crayon). Dans la fenêtre Outils de Contrôles, selectionnes "bouton de commande". Le pointeur de souris est devenu une croix. Faire clic gauche là où l'on veut le bouton, puis sans lacher le clic gauche, donner la dimension voulue.

                              Bon courage
                              0
                              1. re ^^
                                j'ai beaucoup de mal avec les bouton ^^ si tu as msn : lapologie@hotmail.com

                                merci
                                0
                            2. euh comment on mets un boutton ^^ ?
                              0
                              1. Mets un bouton sur ta feuille récap (la 201ème). Double clique dessus en mode création, tu arrives sur l'évènement à coder, fais un copier/coller des 4 lignes de codes ...

                                ;o)

                                Polux
                                0
                                1. pour l'indication de polux je dois copier sa " Dim i As Integer

                                  For i = 1 to Sheets.Count - 1
                                  Worksheets(201).Range("C13").Value = Worksheets(201).Range("C13").Value + Worksheets(i).Range("C13").Value
                                  next i " et juste a la mettre dans la cellule ou je veux que ma date apparaise ?
                                  0
                                  1. oui mais bon 200 feuilles sa fait un peu beaucoup a faire surtout que j'ai pas que la cellule I13 qui doit etre indiqué sur ma feuille recap ^^'
                                    0
                                    1. Contributeur
                                      Sûr

                                      Suit l'indication de Pollux .
                                      0
                                  2. euh j'dois mettre quoi dans la cellule ? ^^
                                    0
                                    1. Contributeur
                                      La liaison à écrire est , par exemple :

                                      = / tu vas sur ta feuille 1 / tu clicques sur la cellule I13 / tu valides.

                                      tu recommences avec chaque feuille sur une nouvelle cellule de ta feuille récap.

                                      à moins que je n'ai pas compris ta demande.
                                      0
                                      1. Contributeur
                                        Ou regarde la solution de Polux ..... pas mal ....
                                        0
                                    • 1
                                    • 2