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 :

Macros Couper/Coller en masse [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2019
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2019
    Messages : 27
    Par défaut Macros Couper/Coller en masse
    Bonjour le forum,

    Mon classeur Excel est organisé de la façon suivante:
    - Une feuille "Feuille d'importation"
    - Une feuille "BDD"

    Je veux que mon utilisateur puisse saisir des informations dans la feuille "Feuille d'importation", et que toutes ces informations se coupent, puis se collent dans la feuille BDD.
    La feuille BDD sera masqué pour les utilisateurs, le but étant que la BDD fasse un historique de tout ce qui sera rentré via la feuille d'importation au fil du temps.

    Mon soucis est le suivant:
    J'ai bien réglé ma Macro, pour que les informations s’implémentent dans les bonnes cellules [Puisqu'une information saisie dans la colonne A en "Feuille d'importation" ne doit pas se coller en colonne A en "BDD"], et se mettent à la suite de ce qui a déjà été rentré. Mais je n'arrive qu'à exporter la première ligne

    Est ce quelqu'un saurait comment faire pour que toutes les lignes saisies dans Feuille d'importation soient Coller dans BDD ?

    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
    Sub Bouton3_Cliquer()
     
    Dim debLig As Integer
     
    Application.ScreenUpdating = False
     
    With Sheets("BDD")
    debLig = .Range("B65536").End(xlUp).Row + 1
        .Cells(debLig, 2) = Sheets("Feuille d'importation").Cells(2, 1)
        .Cells(debLig, 4) = Sheets("Feuille d'importation").Cells(2, 2)
        .Cells(debLig, 5) = Sheets("Feuille d'importation").Cells(2, 3)
        .Cells(debLig, 6) = Sheets("Feuille d'importation").Cells(2, 4)
        .Cells(debLig, 7) = Sheets("Feuille d'importation").Cells(2, 5)
        .Activate
    End With
    Sheets("Feuille d'importation").Range("A2:G2").ClearContents
     
    End Sub
    J'ai mis un activate à la fin de la recopie pour pouvoir vérifier tout de suite comment s'est passé l'import. Bien sûr, cette ligne sera supprimée après.

    J'ai joins un classeur test à titre d'exemple.
    PS: La date est mal gérée sur l'importation, je sais, c'est parce qu'il s'agit purement d'un fichier Test .

    Merci d'avance!
    Fichiers attachés Fichiers attachés

  2. #2
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2019
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2019
    Messages : 27
    Par défaut
    Trouvé

    Il me reste juste à trouver comment effacer toutes les lignes de A2 jusqu'à la fin de la feuille

    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
    Sub Bouton3_Cliquer()
     
    Dim debLig As Integer
    Dim i As Long
     
    dernligne = Sheets("Feuille d'importation").Range("A" & Rows.Count).End(xlUp).Row
     
    Application.ScreenUpdating = False
     
    With Sheets("BDD")
     
    For i = 2 To dernligne
     
    debLig = .Range("B65536").End(xlUp).Row + 1
        .Cells(debLig, 2) = Sheets("Feuille d'importation").Cells(i, 1)
        .Cells(debLig, 4) = Sheets("Feuille d'importation").Cells(i, 2)
        .Cells(debLig, 5) = Sheets("Feuille d'importation").Cells(i, 3)
        .Cells(debLig, 6) = Sheets("Feuille d'importation").Cells(i, 4)
        .Cells(debLig, 7) = Sheets("Feuille d'importation").Cells(i, 5)
        .Activate
     
    Next i
     
    End With
    Sheets("Feuille d'importation").Range("A2:G2").ClearContents
     
    End Sub

  3. #3
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Ou en une seule fois entre autre.

    Regarde l'aide sur Resize de passage

    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
    Sub Bouton3_Cliquer()
    Dim DebLig As Long, DernLigne As Long
     
    Application.ScreenUpdating = False
    DernLigne = Worksheets("Feuille d'importation").Range("A" & Rows.Count).End(xlUp).Row
    With Worksheets("BDD")
        DebLig = .Range("B65536").End(xlUp).Row + 1
        .Cells(DebLig, 2).Resize(DernLigne).Value = Sheets("Feuille d'importation").Cells(1, 1).Resize(DernLigne).Value
        .Cells(DebLig, 4).Resize(DernLigne).Value = Sheets("Feuille d'importation").Cells(1, 2).Resize(DernLigne).Value
        .Cells(DebLig, 5).Resize(DernLigne).Value = Sheets("Feuille d'importation").Cells(1, 3).Resize(DernLigne).Value
        .Cells(DebLig, 6).Resize(DernLigne).Value = Sheets("Feuille d'importation").Cells(1, 4).Resize(DernLigne).Value
        .Cells(DebLig, 7).Resize(DernLigne).Value = Sheets("Feuille d'importation").Cells(1, 5).Resize(DernLigne).Value
    End With
    Worksheets("Feuille d'importation").Range("A1:G" & DernLigne).ClearContents
    End Sub

  4. #4
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2019
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2019
    Messages : 27
    Par défaut
    Voilà, je le laisse ici si un jour quelqu'un a besoin

    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
    Sub Bouton3_Cliquer()
     
    Dim debLig As Integer
    Dim i As Long
     
    dernligne = Sheets("Feuille d'importation").Range("A" & Rows.Count).End(xlUp).Row
     
    Application.ScreenUpdating = False
     
    With Sheets("BDD")
     
    For i = 2 To dernligne
     
    debLig = .Range("B65536").End(xlUp).Row + 1
        .Cells(debLig, 2) = Sheets("Feuille d'importation").Cells(i, 1)
        .Cells(debLig, 4) = Sheets("Feuille d'importation").Cells(i, 2)
        .Cells(debLig, 5) = Sheets("Feuille d'importation").Cells(i, 3)
        .Cells(debLig, 6) = Sheets("Feuille d'importation").Cells(i, 4)
        .Cells(debLig, 7) = Sheets("Feuille d'importation").Cells(i, 5)
     
    Next i
     
    End With
    Range(Cells(2, 1), Cells(Rows.Count, Columns.Count)).Clear
     
    End Sub
    Citation Envoyé par mercatog Voir le message


    Je connais pas du tout Resize, mais du coup j'irais voir ça au passage, merci beaucoup !

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

Discussions similaires

  1. macro couper coller
    Par momoxrace dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 22/05/2015, 17h26
  2. Macro couper Coller
    Par NONOSSONV dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 19/05/2015, 21h32
  3. Macros couper-coller avec fonction si
    Par ayms75 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/09/2014, 17h30
  4. Macro couper coller des lignes
    Par coolmomodu31 dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 30/08/2013, 21h04
  5. [XL-2003] Macro Couper/coller selon un critère
    Par khroutchev dans le forum Macros et VBA Excel
    Réponses: 20
    Dernier message: 19/07/2013, 16h14

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