RechercheV en VBA & problème format DATE & TIME

Bonjour à tous,

A)

J'éprouve des difficultés à penser le code VBA qui va me permettre de faire ce que j'ai fait dans le fichier joint avec la formule recherchev.

La formule affiche le contenu du jour depuis le calendrier dans le todo du jour.

Cependant je voudrais pouvoir me passer de formules et le faire en VBA pour pouvoir une fois terminé les "en cours" de la journée

effacer le contenu des cellules terminée.

Hors Les cellules qui contiennent rechercheV restent remplient de la formule recherchev dont le contenu changera demain quand la date aura changée. Moi si j'ai fini de sortir les poubelles à 14H je voudrais pouvoir vider la cellule correspondante mais en faite c'est ma formule que j’efface.

J'ai trouvé ce code sur le web qui ne marche pas chez moi :

Sub test()
With Sheets("Feuil1")
    .Range("B1").Value = WorksheetFunction.VLookup(.Range("A1").Value, Sheets("Feuil2").Range("A1:B100"), 2, False)
End With
End Sub

B)

Dans ce même fichier, et j'ai retourné le web sans comprendre le problème. La colonne ou le clique pour démarrer une action, n'afficher pas le format tel que je le désir : 12.07.15 17:26:14 il affiche 12/07/201517:26:14 quelque soit les modifs de format depuis l''interface ou le VBA

Pouvez vous me donner un coup de pouce encore une fois ?

Merci à vous.

1241207.xlsm (20.37 Ko)

Bonjour

Les formules seront mises en place à l'ouverture du fichier

A tester

 With Sheets("TODAY")
 ...
   .Formula = "=VLOOKUP($A$2,CALENDAR!A:G,ROW()-2,0)"
 ...

Ca fait 10 minutes que je je relis ce petit bout de code. C'est magnifique ! Même si je bute sur ,ROW()-2 car dans les formules c'est

=RECHERCHEV($A$2;CALENDAR!A:B;2;0)
=RECHERCHEV($A$2;CALENDAR!A:C;3;0)
=RECHERCHEV($A$2;CALENDAR!A:D;4;0)
=RECHERCHEV($A$2;CALENDAR!A:E;5;0)
......

Pourrais-tu juste m'éclairer avant que je passe en résolu ?

Je sais que tu écris que dans la feuille TODAY, dans la range A4:A9, la formule cherche la valeur $A$2 dans la feuille CALENDAR dans les colonnes de A à G. Mais ce que veut dire la valeur négative ROW()-2,0. ?

With Sheets("TODAY")
  With Range("A4:A9")
    .Formula = "=VLOOKUP($A$2,CALENDAR!A:G,ROW()-2,0)"
    .Value = .Value
    End With
   .Range("B4:B9").ClearContents
   End With

Bonjour

La fonction ROW() c'est l'équivalent de LIGNE()

Cette fonction retourne le numéro de la ligne dans laquelle est est placée

Essayes la dans une feuille de calcul

=LIGNE()

Ensuite si elle placée dans la formule VLOOKUP() c'est pour retourner le numéro de la colonne en fonction de la ligne dans laquelle la formule est placée

Dans la ligne 4 : on va chercher la valeur en colonne : LIGNE() - 2 = 4-2 =2

Dans la ligne 5 : on va chercher la valeur en colonne : LIGNE() - 2 = 5-2 =3

Dans la ligne 6 : on va chercher la valeur en colonne : LIGNE() - 2 = 6-2 =4

etc ....

Essayes de relancer la macro en mettant en commentaire

'.Value = .Value

Tu verras les formules dans les cellules

Désolé pour le temps de réaction, mais j'ai pris une heure pour capter que le renvoi de cette ligne te permettait d'adapter le résultat sur la colonne voulue. Le renvoi de la ligne

4 - 2 renvoi le résultat en ligne 4 de la colonne 2

5 - 2 renvoi le résultat en ligne 5 de la colonne 3

and so on.... c'est pourtant simple mais j'ai bugé....

Je te remercie une fois de plus Passe une bonne soirée ^^

Rechercher des sujets similaires à "recherchev vba probleme format date time"