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 :

Remplissage de cellules automatique


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Responsable d'agence
    Inscrit en
    Août 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Responsable d'agence
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2016
    Messages : 1
    Par défaut Remplissage de cellules automatique
    Bonjour,
    Certains me diront que c'est un sujet redondant.
    Effectivement j'ai vu des posts en ce sens, mais je n'ai pas réussi à adapter le code à mon feuille / mon classeur.

    Je vais tenter de décrire précisément mes attentes.

    J'aimerais que ma colonne "Client" et la colonne "N° de compte" se remplissent automatiquement si l'un OU l'autre est renseigné.

    Ils sont dans la feuille "Liste" de mon classeur.

    J'ai une feuille "Données" dans laquelle se situe ma matrice (B6:C949) colonne B les noms des clients et colonne C les numéros de compte associés;

    J'ai besoin de traiter ces infos, J'ai donc des validations de données. ce qui empêche de mettre n'importe quel nom de client, il doit figurer dans la liste. Idem pour les numéros.

    http://www.developpez.net/forums/d15...ction-d-liste/

    J'ai tenté d'adapter le code du lien ci dessus, mais à l'exécution de la macro rien ne se passe... Elle est bien dans le module de la feuille "Liste".

    Merci d'avance pour votre aide.

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    A mettre dans le module de la feuille où tu veux inscrire le nom du client et son n° de compte. Les colonnes cibles sont B (pour les noms) et C (pour les n° de compte) comme dans la feuille "Données", si différent, adapte :
    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
     
    Private Sub Worksheet_Change(ByVal Target As Range)
     
        Dim Plage As Range
        Dim Cel As Range
     
        If Target.Count > 1 Then Exit Sub
     
        If Target.Column = 2 Then 'ici, colonne B pour la colonne "Clients"
     
            'défini la plage sur la colonne B de la feuille "Données"
            With Worksheets("Données"): Set Plage = .Range(.Cells(1, 2), .Cells(.Rows.Count, 2).End(xlUp)): End With
     
            'effectue la recherche du client. Attention, si plusieurs clients ayant le même nom, le premier trouvé sera pris en compte !
            Set Cel = Plage.Find(Target.Value, , xlValues, xlWhole)
     
            'si trouvé, inscrit le N° de compte
            If Not Cel Is Nothing Then Target.Offset(, 1) = Cel.Offset(, 1).Value
     
        End If
     
        If Target.Column = 3 Then 'ici, colonne C pour la colonne "N° de compte"
     
            'défini la plage sur la colonne C de la feuille "Données"
            With Worksheets("Données"): Set Plage = .Range(.Cells(1, 3), .Cells(.Rows.Count, 3).End(xlUp)): End With
     
            'effectue la recherche du n° de compte. Ici pas de problème, les n° de compte étant uniques !
            Set Cel = Plage.Find(Target.Value, , xlValues, xlWhole)
     
            'si trouvé, inscrit le nom du client
            If Not Cel Is Nothing Then Target.Offset(, -1) = Cel.Offset(, -1).Value
     
        End If
     
    End Sub

Discussions similaires

  1. [XL-2007] Remplissage de cellules Automatique d'aprés un Lien Hypertexte
    Par misticks dans le forum Excel
    Réponses: 5
    Dernier message: 12/10/2014, 10h50
  2. [XL-2010] Mail automatique conditionné par le remplissage de cellules
    Par LaKoupe dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 13/09/2013, 15h58
  3. Réponses: 17
    Dernier message: 13/01/2009, 19h05
  4. [E-03] Remplissage de cellule automatique en fonction d'une ligne
    Par cricket26 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/01/2009, 11h06
  5. remplissage cellule automatique sur une donnée saisie !
    Par ptitlulu94 dans le forum Access
    Réponses: 1
    Dernier message: 15/03/2006, 15h06

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