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 :

Utilisation de vlookup VBA avec une plage nommée


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2018
    Messages : 8
    Par défaut Utilisation de vlookup VBA avec une plage nommée
    Bonjour Boisgontierjacques

    Cette discussion date un peu, mais j'aurais besoin d'aide pour votre code. Je ne maîtrise pas VBA, je m'exerce à l'aide de l'enregistreur ou de trouvailles comme ici
    J'ai utilisé celui ci, qui faisait parfaitement son job, toutefois les besoins ont évolués.

    Maintenant certaines personnes doivent voir dans le filtre 2 voir 3 différentes initiales.
    Exemple je devais voir les cellules contenant GBE, maintenant je dois voir les cellules contenant GBE et/ou FHA

    je suppose qu'il faut ajouter quelque part un "And" mais j'en suis absolument pas sure et je ne saurais pas où le mettre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    'chercher l'initiale dans la table de correspondance (ici sur feuille 2)
        Nom = Application.UserName
        initiales = Application.VLookup(Nom, [utilisateurs], 2, False) ' table correspondance
        If Not IsError(initiales) Then
            Sheets(2).Cells.AutoFilter Field:=1, Criteria1:=initiales
        End If
     
           Else
            MsgBox "vous n'êtes pas autorisé à utiliser ce fichier"
    ...
    Dans l'attente de vous lire

    Bonne après-midi

  2. #2
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour amo,
    (bienvenue sur ce forum)

    La solution la plus simple serait alors d'utiliser un filtre éléboré.
    Voir le tutoriel de l'ami Philippe

    Filtres élaborés

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2018
    Messages : 8
    Par défaut
    Citation Envoyé par MarcelG Voir le message
    Bonjour amo,
    (bienvenue sur ce forum)

    La solution la plus simple serait alors d'utiliser un filtre éléboré.
    Voir le tutoriel de l'ami Philippe

    Filtres élaborés
    Bonjour MarcelG

    Merci pour votre réponse. Le filtre élaboré était la piste que j'étais entrain de creuser. mais mon code fait appel au nom utilisateur (nom d'office) et donc je ne suis pas sure que ce soit la bonne piste, car le nom d'utilisateur n'est pas dans la plage à filtrer, uniquement dans la table de correspondance/zone de critères.
    Ce vais lire le tutoriel pour voir si je trouve mon bonheur.

    Bonne journée

  4. #4
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut,

    Il suffit d'enrichir la zone de critères des initiales, calculées sur chaque nom, cherchées (par VBA ou non) et utiliser les conditions et/ou comme le montre le tutoriel.
    Il serait peut être nécessaire de définir la zone de critères en fonction du nombre de noms cherchés.

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2018
    Messages : 8
    Par défaut
    Citation Envoyé par MarcelG Voir le message
    Salut,

    Il suffit d'enrichir la zone de critères des initiales, calculées sur chaque nom, cherchées (par VBA ou non) et utiliser les conditions et/ou comme le montre le tutoriel.
    Il serait peut être nécessaire de définir la zone de critères en fonction du nombre de noms cherchés.
    Je suis désolé je ne comprends pas ce que vous proposez.
    malheureusement je ne peux pas joindre le fichier (fichier professionnel)
    Ce fichier est envoyé à différentes personnes et chacun doit voir seulement ce qui le concerne.

    Ma feuille FNC (onglet 2) plusieurs lignes et colonnes.
    Dans la colonne A j'ai mes initiales. (FHA, GBE...)
    C'est la colonne A qui se filtre automatique suivant l'utilisateur qui ouvre le fichier.

    Ma feuille2 est ma table de correspondance, en colonne A, j'ai Prénom et Nom de Famille (comme reprit dans office Excel) et dans la colonne B les initiales qui lui sont dédiées
    ma feuille2 serait alors ma zone de critères, où se trouve déjà les initiales pour chaque nom...

    Exemple
    Colonne A Colonne B
    Pierre Dupont *FHA*
    Michel Schmit *GBE*
    etc

    Lorsque Pierre Dupont ouvre le fichier à partir de son pc, il voit à l'ouverture du fichier, que les lignes dont la colonne A contient FHA. La feuille est protégée, l'utilisateur ne peut pas modifier le filtre ou tout autre chose

    Et je n'arrive pas à trouver, pour faire en sorte que Pierre Dupont voit à l'ouverture du fichier, les lignes dont la colonne A contient p.ex. FHA & GBE

  6. #6
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    OK. La problématique est claire

    Au demeurant, nous sommes d'accord.

    A l'ouverture du classeur, une recherche est effectuée sur le Username de l'utilisateur dans la base utilitaire.
    Au regard de cette donnée figureront dans la colonne suivante ses initiales, dans la colonne suivante les initiales autorisées par cet identifiant, d'autres initiales éventuelles dans la 4ème colonne.
    Ces 2 ou 3 colonnes retournant les initiales autorisées vont enrichir la zone de critères.

    .......
    ID Initiales1 initiales2
    Fred mrc pol
    .......

    Si Fred est l'id machine (Username) alors le filtre élaboré s'effectuera sur une zone de critères comprenant mrc et pol

    Sans évoquer VBA, peux-tu confirmer que l'on peut développer dans cette voie pour répondre à ton besoin.

    (On va y arriver)

Discussions similaires

  1. [XL-2016] Utilisation de vlookup VBA avec une plage nommée
    Par clem256 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 01/12/2017, 09h09
  2. [XL-2010] alimenter une Combobox sur une feuille avec une plage nommée
    Par GADENSEB dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/08/2015, 15h21
  3. Réponses: 3
    Dernier message: 02/05/2015, 21h35
  4. [XL-2013] Définir une plage nommée avec le VBA
    Par skk201 dans le forum Excel
    Réponses: 2
    Dernier message: 11/03/2014, 07h22
  5. Formule avec renvoie d'une plage nommée partielle
    Par doudoustephane dans le forum Excel
    Réponses: 2
    Dernier message: 22/05/2008, 10h25

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