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 :

Insertion ligne avec copie certaines cellules ligne précédente


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Par défaut Insertion ligne avec copie certaines cellules ligne précédente
    Bonjour,

    Ayant encore et toujours du mal avec VBA je me tourne une nouvelle fois vers ce cher forum qui m'est toujours venu en aide

    J'ai créé un bouton qui m'insère une nouvelle ligne tout en copiant la ligne précédente. Mon problème est que je n'ai pas besoin de toute la ligne mais seulement de la cellule de la première colonne de cette ligne et de la 8ème.

    L'intérêt est de gérer un planning en ajoutant des lignes qui conservent les formules de la ligne précédente mais ces formules se trouvent uniquement en colonne A et H. Je n'ai donc pas besoin de ce qui se trouve entre et après.
    Je vous met le code que j'ai fait pour le moment.

    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
    Option Explicit
     
    Sub InsererLigneSem1()
    Dim L As Long
     
     
            L = ActiveCell.Row
     
                With Sheets("Semaine 1")
                    .Rows(L - 1).Copy
                    .Rows(L).Insert Shift:=xlDown       'Insertion
                    .Rows(L).EntireRow.Hidden = False  'Rendre visible la ligne insérée
                End With
     
     
        Application.CutCopyMode = False
    End Sub

    Merci d'avance pour votre aide

  2. #2
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonjour,
    essayes comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub InsererLigneSem1()
    Dim L As Long, Dc As Integer
    L = ActiveCell.Row
    With Sheets("Semaine 1")
      Dc = Cells(L, .Columns.Count).End(xlToLeft).Column
      .Rows(L - 1).Copy
      .Rows(L).Insert Shift:=xlDown    'Insertion
      .Range("B" & L, "G" & L).ClearContents: .Range(.Cells(L, 9), .Cells(L, Dc)).ClearContents
    End With
    Application.CutCopyMode = False
    End Sub
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Par défaut
    Merci pour ta réponse. Malheureusement, ce code ne réponds pas à mes besoins.
    Je te met un exemple du fichier.
    Tu remarqueras que la ligne 5 qui sert de référence pour la copie de la première journée est masquée. En dessous de chaque ligne contenant la date de la journée de la semaine il y a une ligne masquée qui sert de référence pour la copie de formule.

    Si ce que je te dis n'est pas clair n'hésite pas à me demander
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Essayes comme ça, sans garantie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub InsererLigneSem1()
     
    Dim L As Long, Dc As Integer
    L = ActiveCell.Row
     
    With ActiveSheet
      Dc = Cells(L, .Columns.Count).End(xlToLeft).Column
      .Rows(L - 1).Copy
      .Rows(L).Insert Shift:=xlDown    'Insertion
      .Rows(L).EntireRow.Hidden = False  'Rendre visible la ligne insérée
      .Range("B" & L, "G" & L).ClearContents
    End With
    Application.CutCopyMode = False
    End Sub
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

Discussions similaires

  1. [XL-2010] macro copie et colle des lignes avec condition de cellule
    Par olive72 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/01/2015, 16h34
  2. [XL-2007] Insertion d'une ligne avec copie de certains éléments
    Par Zentin dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 04/07/2014, 17h48
  3. Réponses: 2
    Dernier message: 29/08/2012, 15h44
  4. [XL-2003] VBA - Problème d'insertion de ligne avec copie de formules
    Par oracle7556 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 04/06/2010, 15h22
  5. [VBA-E]Insertion ligne + recopie formules certaines cellules
    Par Kaiba dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 14/05/2007, 15h25

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