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 des données d'une feuille vers une autre feuille [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Points : 149
    Points
    149
    Par défaut Copier des données d'une feuille vers une autre feuille
    Bonsoir
    je souhaiterais copier des donnees d'une feuille(masia) vers une feuille (AR_Base).
    je voudrais lister les valeurs dans la colonne A qui va de A1 a A.....
    Chaque fois qu'une des valeurs se trouvent dans la feuille(AR-Base) dans la colonne U copier les valeurs des colonnes suivantes dans la feuille (AR_Base) fichier ci joint
    cris
    ---------------------------------
    Fichier joint dans vos discussions
    -----------------------------------

  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
    Essaies quelque chose comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim Code As String
    Dim c As Range
     
    Code = Me.combobox1.Value
    If Code <> "" Then
        Set c = Worksheets("MASIA").Range("A:A").Find(Code, LookIn:=xlavlues, lookat:=xlWhole)
        If Not c Is Nothing Then
            Worksheets("AR-Base").Range("V" & Me.combobox1.ListIndex + 3).Resize(1, 4) = c.Offset(0, 1).Resize(1, 4)
            Set c = Nothing
        End If
    End If

  3. #3
    Membre habitué
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Points : 149
    Points
    149
    Par défaut
    excuse moi mercatog,je me suis un peu embrouille dans ma premiere demande.
    j'ai donc modifie mon post.
    fichier joint
    merci
    cris

  4. #4
    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
    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
    Sub Remplissage()
    Dim c As Range, v As Range
     
    Application.ScreenUpdating = False
    With Worksheets("AR-Base")
        'On parcour les cellules de la colonne U de la feuille AR-Base
        For Each v In .Range("U3:U" & .Cells(.Rows.Count, "U").End(xlUp).Row)
            'Si la cellule v n'est pas vide
            If v.Value <> "" Then
                'on recherche la cellule dans la colonne A de la feuille MASIA
                Set c = Worksheets("MASIA").Range("A:A").Find(v.Value, LookIn:=xlValues, lookat:=xlWhole)
                'Si on trouve la cellule c, on transfère les valeurs des 4 cellules à droite de v vers les 4 cellules à droite de v
                If Not c Is Nothing Then
                    v.Offset(0, 1).Resize(1, 4).Value = c.Offset(0, 1).Resize(1, 4).Value
                    Set c = Nothing
                    'Si on ne trouve pas de cellule c, On efface les 4 cellules à droite de v
                Else
                    v.Offset(0, 1).Resize(1, 4).ClearContents
                End If
            End If
        Next v
    End With
    End Sub

  5. #5
    Membre habitué
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Points : 149
    Points
    149
    Par défaut
    merci mercatog
    tu est un as.
    cris

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/01/2015, 14h39
  2. Copier des données d'un fichier vers un autre sans écraser le second
    Par jalons dans le forum Shell et commandes GNU
    Réponses: 10
    Dernier message: 09/04/2013, 20h07
  3. copier des données d'un classeur vers un autre
    Par jackall dans le forum Macros et VBA Excel
    Réponses: 19
    Dernier message: 01/08/2008, 17h20
  4. Récuperer des données de fichier pdf vers une feuille xls
    Par zeralium dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/08/2007, 14h03
  5. [VBA-E] Copier des données d'un tableau a une feuille
    Par KKshi666 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 12/04/2007, 14h09

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