IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[E-03] Insertion d'une ligne en conservant les formules existantes


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Par défaut [E-03] Insertion d'une ligne en conservant les formules existantes
    Bonjour à tous,

    J'ai besoin de votre aide car je dois développer un outil nécessitant beaucoup de VBA, mais je suis ultra-débutant (ne maîtrisant que le langage MAtlab).

    Ma première requête sera assez simple.

    Je souhaite pouvoir introduire une ligne en utilisant la fonction "Insert" habituelle (sans passer par VBA donc), et que la nouvelle ligne créée contienne les formules déjà existantes dans le tableau.

    Pour des raisons d'ordre pratique, je ne peux pas le réaliser en "manuel" (copier une ligne,puis utiliser "Insert copied cells").

    Je me doute que l'utile ce serait une macro qui s'active automatiquement lors de l'insertion d'une ligne, mais c'est au-dessus de mes compétences.

    Merci d'avance pour votre aide.

  2. #2
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Par défaut
    Tentative personnelle :

    Voici la macro que je viens d'enregistrer et qui effectue la copie des formules à partir de la ligne se trouvant au dessus de la ligne insérée (obligatoirement dans ce sens car la formule n'est plus correcte si je copie par le dessous).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    ActiveCell.Offset(-1, 0).Range("A1").Select
        Selection.AutoFill Destination:=ActiveCell.Range("A1:A2"), Type:= _
            xlFillDefault
        ActiveCell.Range("A1:A2").Select
        ActiveCell.Offset(0, 3).Range("A1").Select
        Selection.AutoFill Destination:=ActiveCell.Range("A1:A2"), Type:= _
            xlFillDefault
        ActiveCell.Range("A1:A2").Select
        ActiveCell.Offset(0, 2).Range("A1").Select
        Selection.AutoFill Destination:=ActiveCell.Range("A1:A2"), Type:= _
            xlFillDefault
        ActiveCell.Range("A1:A2").Select
        ActiveCell.Offset(0, 2).Range("A1").Select
        Selection.AutoFill Destination:=ActiveCell.Range("A1:A2"), Type:= _
            xlFillDefault
        ActiveCell.Range("A1:A2").Select
        ActiveWindow.ScrollColumn = 2
        ActiveWindow.ScrollColumn = 3
        ActiveWindow.ScrollColumn = 4
        ActiveWindow.ScrollColumn = 5
        ActiveCell.Offset(0, 4).Range("A1:C1").Select
        Selection.AutoFill Destination:=ActiveCell.Range("A1:C2"), Type:= _
            xlFillDefault
        ActiveCell.Range("A1:C2").Select
        ActiveWindow.ScrollColumn = 6
        ActiveWindow.ScrollColumn = 7
        ActiveWindow.ScrollColumn = 8
        ActiveWindow.ScrollColumn = 9
        ActiveCell.Offset(0, 4).Range("A1:C1").Select
        Selection.AutoFill Destination:=ActiveCell.Range("A1:C2"), Type:= _
            xlFillDefault
        ActiveCell.Range("A1:C2").Select
        ActiveCell.Offset(0, 4).Range("A1:C1").Select
        Selection.AutoFill Destination:=ActiveCell.Range("A1:C2"), Type:= _
            xlFillDefault
        ActiveCell.Range("A1:C2").Select
        ActiveWindow.ScrollColumn = 10
    Peut-être cela servira-t-il à une base de travail pour les bienfaiteurs qui me viendront en aide. Peut-être ne reste-t-il qu'à ajouter la commande pour l'exécution automatique de la macro lors d'une insertion de ligne?

    Merci d'avance pour votre aide

  3. #3
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Ce code, extrait de l'enregistreur de macro, est incompréhensible.

    Peut-être, peux-tu nous expliquer (éventuellement avec un exemple) ce que tu cherches à faire.
    Plus tu nous donneras de détails, plus tu as de chances de recevoir une réponse adaptée.
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  4. #4
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Par défaut
    Auto-résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Insérer une ligne en recopiant les formules et mise en forme
    Par mogo107 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 12/06/2013, 23h05
  2. [XL-2003] Insertion d'une ligne avec recopie des formules ?
    Par OtObOx dans le forum Excel
    Réponses: 6
    Dernier message: 31/03/2012, 23h00
  3. supprimer une ligne sans influencer les formules
    Par macpascal dans le forum Excel
    Réponses: 1
    Dernier message: 12/06/2009, 00h23
  4. Insertion d'une ligne vide entre les totaux
    Par Prekestolen dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 19/03/2009, 17h17
  5. Insérer une ligne sans modifier les formules
    Par coup dur dans le forum Excel
    Réponses: 2
    Dernier message: 17/03/2008, 12h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo