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 lignes si une condition se realise


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 3
    Par défaut Copier des lignes si une condition se realise
    Bonjour les amis,
    Y a t'il quelqu'un qui peut m'aider la dessus?
    Merci d'avance;
    J'ai un fichier qui contient des adresses, de la facon suivante:
    Colonne
    A Nom
    B Prenom
    C Adresse Complete;
    Le probleme c'est que parfois le nom est dans la colonne A, parfois et dans la B, c'etait pas bien organisé lors de l'entrée des données;
    La j'ai une autre feuille qui contient d'autres données sur ces personnes,avec le nom et prenom concatené et je veux que Excel cherche automatiquement en passant a travers cet feuille que s'il trouve le nom et le prenom, ou vis vers ca, il copie l'adresse dans la cellule a cote dans la meme ligne;
    Exemple:
    Dans la feuille adresse, j'ai les colonnes suivantes:
    A B C
    Nom Prenom Adresse
    Titi Tata 404 Rue de la nature, France
    Dans la deuxieme feuille j'ai:
    A B C D
    Titi Tata Reference 1 400Euro
    (est parfois tata titi)
    Donc je veux faire une macro qui verifie dans quelle colonne il y a Titi et Tata, dans n'importe quel ordre, et s'il le trouve, copie l'adresse, dans la colonne D;
    Merci beaucoup de votre aide

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    Tu peu essayé avec ces quelques lignes de code... tu auras déjà quelques idées.
    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
    Sub MyMacro1()
    Dim Nom1 As String, Lig As Long
    Dim tb
    Dim FE1 As Worksheet
    Dim FE2 As Worksheet
        Set FE1 = Sheets("Feuil1")
        Set FE2 = Sheets("Feuil2")
    'dans la feuille des références saisir la colonne A
        Lig = 1 'pour l'exemples
        Nom1 = UCase(FE2.Cells(Lig, 1)) 'pour l'exemples
        tb = Split(Nom1, " ") 'il faut un espace entre les 2 mots
        FE1.Select
        For i = 1 To Range("A65536").End(xlUp).Row
            If UCase(Cells(i, 1)) = tb(0) Or UCase(Cells(i, 1)) = tb(1) Then
                'la ligne est trouvée
                Cells(i, 4) = FE2.Cells(Lig, 3)
                MsgBox "correspondance trouvée à la ligne " & i
                Exit For
           End If
        Next i
    End Sub
    A+

Discussions similaires

  1. Copier des lignes dans une autre feuille sous condition
    Par Maya06 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/05/2014, 20h57
  2. Copier des lignes avec une condition
    Par gliglian dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/02/2009, 00h06
  3. Excel-copier des lignes sur une autre feuille
    Par petecul dans le forum Excel
    Réponses: 7
    Dernier message: 13/09/2007, 02h56
  4. [VBA_E]:copier des lignes d'une feuille à une autre
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/06/2006, 16h42
  5. Copier des lignes d'une table
    Par thomas_strass dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 01/07/2005, 15h42

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