Problème avec fonction HLookup

Holtlion31 Messages postés 29 Statut Membre -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour à tous.

J'ai un planning de l'année 2016 (01/01/2016 au 31/12/2016)
Mes dates sont en lignes: Ma plage est donc G4 à JG4
Je suppose que la fonction HLookup est celle qu'il me faut mais je n'en suis pas sur

J'aimerai dire: J'ai une date: le 13/01/2016, je cherche cette date dans ma plage G4 à JG4. Une fois que j'ai trouvé la date, je sélectionne la cellule située 3 lignes en dessous de la cellule de la date.

En résumé: ma date cherchée est 13/01/2016. Je la cherche dans la plage G4 à JG4. Dans cet exemple, je me positionne sur O4 + 3 lignes, donc je sélectionne la cellule O7.

J'ai juste besoin de ce bout de code, le reste est ok.
Quelqu'un connais le code?

Merci :)

4 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    Un exemple (avec Find)
    http://www.cjoint.com/c/FDunP4HQiNQ

    Cdlmnt
    0
  2. Holtlion31 Messages postés 29 Statut Membre
     
    Alors c'est peut être find qu'il me faut finalement.
    Je vais essayer d'adapter avec mon fichier

    Merci
    0
  3. Holtlion31 Messages postés 29 Statut Membre
     
    Je ne m'en sort pas
    Voici le code:

    Sub Planning_auto()

    ' Définition des variables
    Dim a As Integer
    Dim m As String
    Dim obj As Object
    Dim col As Long
    Dim Li As Long

    ' Valeur maxi de mes variables lors des boucles
    m = Sheets("Tableau de Synthèse").Range("B1").Value

    For a = 1 To m
    Sheets("Tableau de Synthèse").Range("K" & a + 2).Select
    Set obj = Rows(4).Find(ActiveCell, , , xlWhole)
    If Not obj Is Nothing Then
    col = obj.Column
    Li = 4 + a + 1
    ActiveCell.Value = Range("I" & a + 2).Value
    End If

    Next a

    End Sub

    Je n'arrive pas, une fois la date trouvée, à aller chercher la valeur que je veux et la coller dans la cellule sélectionner

    Pouvez-vous m'aider svp?
    0
    1. Holtlion31 Messages postés 29 Statut Membre
       
      Ah oui de plus, lorsque je lance le code, il me change ma date, ici "13/01/2016" en "01/01/1900 12:00:00", idem pour la 2ème, mais pas les autres

      Je ne comprends pas pourquoi
      0
  4. ccm81 Messages postés 11033 Statut Membre 2 434
     
    1. La variable Li est affectée et non utilisée.
    Li = 4 + a + 1
    2. idem pour la variable col
    col = obj.Column
    3. Difficile d'en dire plus sans voir le fichier
    Peux tu envoyer la partie concernée de ton fichier, sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu

    Cdlmnt
    0