1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    septembre 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2009
    Messages : 36
    Points : 27
    Points
    27

    Par défaut récupérer les coordonnées d'une cellule (rechechev)

    Bonjour

    Je dois faire un recherchev pour retrouver des valeurs dans un autre tableau d'un autre onglet

    mais j'ai aussi besoin de récupérer la mise en forme de la cellule (couleur, etc)

    pour cela je voudrais récupérer les coordonnées de la cellule mais je n'y arrive pas ...

    je sais je ne suis pas très claire ...

    je vous joint un fichier, j'espère qu'il vous aidera

    sur l'onglet "sheet2" en E7 j'ai besoin de récupérer la valeur qui se trouve en D7 de l'onglet "sheet1"
    ainsi que sa couleur

    le tout en vba

    j'utilise la fonction VLookup mais je n'arrive pas à récupérer l'adresse de la valeur trouvée

    Merci d'avance et n'hésitez pas si vous avez des questions

    ex.xlsx

  2. #2
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    février 2010
    Messages
    4 178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : février 2010
    Messages : 4 178
    Points : 7 587
    Points
    7 587

    Par défaut

    Bonjour

    La fonction EQUIV (MATCH) te donne la ligne et tu connais la colonne...
    Chris

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    septembre 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2009
    Messages : 36
    Points : 27
    Points
    27

    Par défaut

    j'ai trouvé ce code mais il ne fonctionne pas ...

    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
    Function rechv(ValRech As String, TabRech As Range, Col As Integer, Exact As Boolean) As Double
     
    Dim Val As String
    Dim Couleur
    Dim Ligne As Long
    Dim Colonne As Integer
     
    'déterminaison de val :
    rechv = WorksheetFunction.VLookup(ValRech, TabRech, Col, Exact)
    Ligne = WorksheetFunction.Match(ValRech, TabRech, 0)
    Colonne = Col
    Couleur = Cells(Ligne, Colonne).Interior.Color
     
    MsgBox Couleur
     
    End Function

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    septembre 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2009
    Messages : 36
    Points : 27
    Points
    27

    Par défaut J'ai trouvé !!

    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
     
    Function rechv(ValRech As String, TabRech As Range, Col As Integer, Exact As Boolean) As Double
     
    Dim Val As String
    Dim Couleur
    Dim Ligne As Long
    Dim Colonne As Integer
     
    rechv = WorksheetFunction.VLookup(ValRech, TabRech, Col, Exact)
    Ligne = WorksheetFunction.Match(ValRech, Sheets("Sheet1").Range("A:A"), 0)
    Colonne = Col
    Couleur = Sheets("Sheet1").Cells(Ligne, Colonne).Font.Color
     
    Application.ActiveCell.Font.Color = Couleur
     
    End Function

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    septembre 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2009
    Messages : 36
    Points : 27
    Points
    27

    Par défaut

    Bon
    Voici la dernière mouture
    lorsque je copiais la fonction dans plusieurs cellules la partie couleur ne fonctionnait pas
    donc voici la rectification

    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
    Function rechv(valrech As String, ByRef tabrech As Excel.Range, Col As Integer, Exact As Boolean) As Variant
     
    Dim Couleur
    Dim Ligne As Long
    Dim Colonne As Integer
    Dim cellCaller As Excel.Range
     
    rechv = WorksheetFunction.VLookup(valrech, tabrech, Col, Exact)
    Ligne = WorksheetFunction.Match(valrech, Sheets("Sheet1").Range("A:A"), 0)
    Colonne = Col
    Couleur = Sheets("Sheet1").Cells(Ligne, Colonne).Font.Color
     
    Set cellCaller = Application.Caller
    cellCaller.Font.Color = Couleur
    Set cellCaller = Nothing
     
    End Function

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 26/01/2017, 11h11
  2. Récupérer les coordonnées d'une cellule après clic
    Par pelerin98 dans le forum Excel
    Réponses: 8
    Dernier message: 07/07/2015, 12h21
  3. Une fonction ou sub pour récupérer les coordonnées d'une cellule
    Par Nymar dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 24/09/2014, 15h02
  4. listview : Recupérer les coordonnées d'une cellule
    Par gritchou dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/05/2008, 19h22
  5. Réponses: 1
    Dernier message: 06/02/2008, 09h10

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