Insérer une ligne

Bonjour,

Sur une feuille j'ai plusieurs comptes de 4 colonnes.
Ces comptes n'ont pas tous le même nombre de lignes
Je démarre tous les comptes avec 5 lignes j'aimerais avoir la possibilité d'insérer une ligne supplémentaire avec la formule qu'elle doit comporter mais uniquement sur le compte ou les 5 lignes sont occupées.Les autres comptes ne doivent pas bouger .
Exemple colonnes A B C D et par la suite un autre compte exemple colonnes I J K L
Merci pour votre aide
Cordialement

33 réponses

Résumé de la discussion

Le problème central concerne l’insertion d’une ligne supplémentaire avec une formule sur un compte à 4 colonnes uniquement lorsque ce compte atteint cinq lignes, sans déplacer les autres comptes. Plusieurs solutions ont été évoquées, dont une macro qui gère l’insertion et la mise à jour des données sur la feuille compte, et une approche fondée sur le transfert via des libellés identiques entre feuilles. Des propositions montrent aussi d’envoyer les saisies depuis une colonne libellé vers les tableaux licence et km, insérer la ligne avant le total et recalculer les formules. En parallèle, des échanges évoquent des tests sur la suppression de lignes et la synchronisation des comptes, afin d’éviter des incohérences lors des échanges entre les feuilles.

Bobot (l’IA à votre service)
  1. Bonjour

    Peut être pas tout compris
    http://www.cjoint.com/c/GBiuCZLtfXf

    Cdlmnt
    1
    1. Un essai à tester (du moins si j'ai compris)
      http://www.cjoint.com/c/GBjpgzB8XBf

      Cdlmnt
      1
      1. lorsque une ligne est remplie ,l'insertion se ferait automatiquement.
        laquelle ?
        Dès l'origine (A2:D2 dans ton exemple) la dernière ligne avant total est remplie (par une formule)

        Cdlmnt
        1
        1. Je crois qu'on est en train de changer le problème
          Au vu de ton dernier envoi, voilà comment je verrai la chose
          A passer par une macro, autant lui faire faire tout le boulot en feuille compte qui ne contiendrait plus aucune formule, sauf SOMME(...)
          Tu fais une saisie en feuiille "saisie"
          clic-clic en colonne libellé
          ça envoie dans la feuille compte dans le bon tableau "licence" ou "km" les données avec bien sûr insertion avant la ligne total et maj de la formule

          Mais, peut être que .... !
          1
          1. RQ1. Tu ne me dis pas si le scénario proposé correspond à ce que tu veux
            1. Tu fais une saisie en feuiille "saisie"
            2. clic-clic en colonne libellé
            3. ça envoie dans la feuille compte dans le bon tableau "licence" ou "km" les données avec bien sûr insertion avant la ligne total et maj de la formule

            RQ2. En feuille saisie tu as saisi 3 "licence" consécutives et 3 "km" consécutifs
            1. si tu fais une autre saisie ça sera une "licence" ou un "km"
            2. est ce que chaque ligne "licence" correspond à une ligne "km".
            3. est ce que Dupond gerard doit rester sur la même ligne que Amiens en feuille compte
            1
            1. Bon, ça se précise

              RQ2 1) licence ou km ou autres puisque plusieurs comptes
              Q1. Pour qu'on puisse transférer les données par macro plutôt que par formules, il faut que les intitulés des comptes en feuille compte soient les mêmes qu'en feuille saisie, ce qui n'est pas le cas (dans la colonne nom/prénom il y a des lieux). Donc si ça reste comme ça, on garde tes formules
              Q2. Tous les comptes ont 4 colonnes
              Q3. Les intitulés des comptes (Licence, Kms) en feuille compte se retrouvent exactement tels que en feuille saisie, colonne libellé

              Si tu pouvais envoyer le vrai fichier anonymisé pour que je puisse voir sa structure, ça faciliterait les choses
              1
              1. Bon, n'ayant pas la structure, finalement j'ai gardé les formules
                http://www.cjoint.com/c/GBkr6H1coEf

                Cdlmnt
                1
                1. Une (au moins) formule avait sauté
                  http://www.cjoint.com/c/GBkuo5BQmCf

                  Cdlmnt
                  0
              2. J'ai un peu réfléchi à ma proposition du post #8
                "A passer par une macro, autant lui faire faire tout le boulot en feuille compte qui ne contiendrait plus aucune formule, sauf SOMME(...) "
                Une tentative dans ce sens
                http://www.cjoint.com/c/GBmmWk7VaTf

                Cdlmnt
                1
                1. 1. Effectivement cela fonctionne j'ai du cliquer sur B1
                  tu ajoutes la ligne en gras dans le module de la feuille Saisie

                  If Intersect(Target, Columns(colibFS)) Is Nothing Then Target.Offset(1, 0).Select: Exit Sub
                  If Target.Row < lilibFS Then Target.Offset(1, 0).Select: Exit Sub
                  If Target.Interior.ColorIndex = coulLib Then Target.Offset(1, 0).Select: Exit Sub

                  2. Chose que je viens de voir si je supprime une ligne dans la feuille saisie,elle ne se supprime pas dans le compte concerné
                  Effectivement, ça n'est pas prévu, mais est ce que c'est une situation qui peut arriver (une fois qu'une ligne de saisie est validée et envoyée dans la feuille Compte)
                  1
                  1. Un bug corrigé
                    Un essai à tester pour supprimer une ligne depuis la feuille Saisie
                    http://www.cjoint.com/c/GBnr05hcNif

                    Cdlmnt
                    1
                    1. Bonjour ccm81

                      Merci pour ton aide
                      c'est presque ce que je souhaitais je t'aie mis ci-dessous
                      le fichier que tu m'as envoyé et que j'ai modifié avec quelques explications

                      http://www.cjoint.com/c/GBjk6dRv7oO

                      Merci pour ton aide
                      Cordialement
                      0
                      1. Re Bonjour

                        C'est exactement ce que je souhaite,le petit hic ,s'est d’être obliger
                        d'aller double-cliquer sur une case total pour insérer une nouvelle ligne.
                        Je pensais ,peut-être à tort que lorsque une ligne est remplie ,l'insertion
                        se ferait automatiquement.
                        Crdlt
                        0
                        1. Bonjour

                          J'ai bien compris ce que tu me dis,
                          mais plutôt que de double cliquer comme il faut le faire avec le code VBA que tu as mis ,l'opération ne peut-elle pas se faire automatiquement .
                          Crdlt
                          0
                          1. Bonjour ccm81

                            Je t'ai mis a nouveau un exemple de ce que je devrais avoir
                            Tu constateras que si j'entre à nouveau des données dans la feuille
                            saisie,elles ne seront pas rentrées dans un compte de la feuille comptes
                            étant donné qu'il n'y a pas la formule nécessaire.
                            D’où le besoin d'insérer une ligne automatiquement après chaque saisie.

                            http://www.cjoint.com/c/GBknZJmEyZn
                            Crdlt
                            0
                            1. Merci pour ta réponse

                              Par rapport au fichier envoyé,je ne vois pas comment employer la formule Somme(...) pour obtenir le résultat souhaité...
                              0
                              1. RQ1 ce que tu proposes me convient parfaitement

                                RQ2 1) licence ou km ou autres puisque plusieurs comptes
                                2 et 3) non puisque les tableaux sont indépendants
                                0
                                1. Re,

                                  Q1 Dans la feuille Saisie la colonne B peut être Code et la colonne C Libellé
                                  Q2 Tous les comptes auront 4 colonnes
                                  Q3 les intitulés sont tels que

                                  Désolé pour le fichier a t'envoyer je n'ai que cela puisque je le commence
                                  0
                                  1. Bonjour ccm81

                                    Superbe c'est ce qui peut me convenir,je test et en cas de soucis
                                    je réapparais.
                                    Merci encore une fois
                                    Bon WE
                                    Je passe en résolu
                                    Cordialement
                                    0
                                    1. Bonjour ccm81
                                      je viens de faire un essai j'ai un bug sur la ligne ci-dessous en gras

                                      End Select
                                      ' liste des données
                                      ReDim T(0 To UBound(Tco))
                                      Crdlt
                                      0
                                      • 1
                                      • 2