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 :

copier/coller des cellules vers une première ligne vide


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2011
    Messages : 31
    Points : 4
    Points
    4
    Par défaut copier/coller des cellules vers une première ligne vide
    Bonjour,

    Je souhaite copier des colonnes d'une feuil d'un fichier excel vers une première ligne vide d'une feuille d'un autre fichier excel .
    pour l'instant j'arrive juste à copier les colonne vers une case bien défini

    Comment puis-je m'y prendre ?
    Merci d'avance

    voici le code

    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
    38
    39
    Sub Bouton5_Clic()
     
    Dim Cn As ADODB.Connection
        Dim Fichier As String
        Dim NomFeuille As String, texte_SQL As String
        Dim Rst As ADODB.Recordset
     
        '
        Fichier = "C:\Users\fichier1"
        'Nom de la feuille dans le classeur fermé
        NomFeuille = "feuil1"
     
        Set Cn = New ADODB.Connection
     
        '--- Connection ---
        With Cn
            .Provider = "Microsoft.Jet.OLEDB.4.0"
            .ConnectionString = "Data Source=" & Fichier & _
                ";Extended Properties=Excel 8.0;"
            .Open
        End With
        '-----------------
     
        'Définit la requête.
        '/!\ Attention à ne pas oublier le symbole $ après le nom de la feuille.
        texte_SQL = "SELECT * FROM [" & NomFeuille & "$]"
        '
        Set Rst = New ADODB.Recordset
        Set Rst = Cn.Execute(texte_SQL)
     
     
        'Ecrit le résultat de la requête dans la cellule A2
        Feuil3.Range("A4").CopyFromRecordset Rst
     
        '--- Fermeture connexion ---
        Cn.Close
        Set Cn = Nothing
     
    End Sub

  2. #2
    Expert éminent sénior 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
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonsoir
    Remplace ta ligne par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    'Ecrit le résultat de la requête dans la première cellule vide de la colonne A
    With Feuil3
        .Cells(.Rows.Count, "A").End(xlUp)(2).CopyFromRecordset Rst
    End With
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

Discussions similaires

  1. [XL-2010] comment copier coller des cellules sans prendre en compte les lignes cachées
    Par bboy-eazy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/09/2014, 15h20
  2. [XL-2010] copier des cellules vers une autre feuille
    Par fredplusvar dans le forum Excel
    Réponses: 1
    Dernier message: 22/03/2014, 12h34
  3. Réponses: 1
    Dernier message: 24/02/2014, 15h48
  4. Réponses: 81
    Dernier message: 16/09/2013, 14h48
  5. Réponses: 4
    Dernier message: 22/05/2012, 13h44

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