Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

sélection ligne fonction date

  • Initiateur de la discussion Initiateur de la discussion JORDAN
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

JORDAN

XLDnaute Impliqué
Bonjour le Forum,

J'essaye sans succès de sélectionner la ligne de la date du jour. Jé m'explique :

Colonne A de la feuille Remises, j'ai des dates du 01/01/2006 au 31/12/2006 et lorsque je viens sur cette feuille, sélection faite par :

j'aimerai que la cellule correspondant à la date du jour soit sélectionnée.

J'ai bien fait des essais mais sans succès

Code:
For i = 1 To 400
If Cells(1, 1) = DATELIGNE Then
Cells(1, 1).Select
End If
Next i

Comment dire à DATELIGNE que c'est aujourdhui sa valeur ?

Merci à vous tous
a+
 
Bonsoir Pierrejean, le Forum,

j'ai fait ceci mais toujours sans succès

Code:
Private Sub worksheet_activate()

Dim DATELIGNE As String
Dim i As Integer

DATELIGNE = Format(Date, 'dd/mm/yyyy')
        
For i = 1 To 400
If Cells(1, 1) = DATELIGNE Then
Cells(1, 1).Select
End If
Next i

End Sub

J'ai également essayé Dim DATELIGNE as Date

Si quelqu'un a une suite à cette idée qui est un bon début, je suis preneur

Encore merci
bonne soirée
 
Bonjour

Je pense qu'il va y avoir de l'arrachage de cheveux lorsque tu vas voir le gag. Un peu de fatigue à mon avis.

Private Sub worksheet_activate()

Dim i As Integer

For i = 1 To 400
If Cells(i, 1) = Date Then
Cells(i, 1).Select
End If
Next i
End Sub

Au revoir, à bientôt
 
Bonjour à tous,

J'ai beau essayé vos solutions dans tous les sens, ça ne marche pas.
Je n'arrive pas à sélectionner la ligne correspondant à la date du jour

Ce qui est étrange, j'ai mis :
Range('c151') = DATELIGNE
Range('c152') = DATEJOUR
pour connaitre le contenu de ces 2 valeurs
en C152 j'ai bien 26/05/2006 alors qu'en C151, j'ai rien, cellule vide
par contre si je suis en débogage, les 2 valeurs ont bien 26/05/2006 en mémoire
??????
Si quelqu'un a une petite idée sur le problème, ça m'intéresse fortement

Merci à vous tous
 
Ave,

Histoire de..

Il n'y a pas intérêt à boucler sur toutes les cellules pour trouver la date du jour et la sélectionner :

Cells(Application.Match(Date * 1, [A1:A400], 0), 1).Select

AV [aaa]
 
Bonsoir Pierrejean, AV, le Forum

J'ai essayé vos 2 solutions

la solution proposée par AV :
Cells(Application.Match(Date * 1, [A1:A400], 0), 1).Select
Je n'y comprends pas grand chose, je l'ai quand même insérée dans mon code, sans succès. Sélection d'une autre ligne ou alors il ne se passe rien.

Par contre la solution de Pierrejean fonctionne à merveilles
Un grand merci à vous tous pour vos conseils et en particulier à Pierrejean qui ma très dépanné.

Bonne soirée
A+
 
Bonsoir à Tous,


Code:
Private Sub Workbook_Open()
Dim cel As Range
Dim aujourdhui As Date
aujourdhui = Date
For Each cel In Range('A1:A366')
If cel.Value = aujourdhui Then

cel.Offset(0, 0).Activate
End If
Next cel

End Sub

Quand je vois le code d'AV, qui marche parfaitement chez moi... de même que celui de PierreJean 😉 , il n'ya pas photo...
 
Re,


''..la solution proposée par AV ....je l'ai quand même insérée dans mon code, sans succès...''


Pour être sur que tu n'es pas la victime d'un micro-climat et vérifier la différence de rapidité d'exécution d'une boucle et d'un ''Match''

AV [aaa] [file name=Cherche_Date_Jour.zip size=8648]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Cherche_Date_Jour.zip[/file]
 

Pièces jointes

Bonjour le Forum,
Info interessante
Question subsidiaire?
Comment faire la même chose dans une Listbox, j'ai des mises à jour à faire sur un tableau du 1 au 31 décembre et je souhaite que ma listbox en initialisant ce positionne sur la date du jour( tout en pouvant après changer de date).
Escuser moi de m'incrusté sur ce fil, mais comme le principe pourrais me servir.
Bruno
 
Bonjour le Forum,
Info interessante
Question subsidiaire?
Comment faire la même chose dans une Listbox, j'ai des mises à jour à faire sur un tableau du 1 au 31 décembre et je souhaite que ma listbox en initialisant ce positionne sur la date du jour( tout en pouvant après changer de date).
Escuser moi de m'incrusté sur ce fil, mais comme le principe pourrais me servir.
Bruno
 
bonjour tous

Il est tout a fait exact que la solution de AV est la meilleure
Elle combine merveilleusement les fonctions integrées d'Excel et le Vba
En ce qui me concerne je suis malheureusement imperméable aux fonctions (n'est-ce pas andré !!!)
Je vais tout de même de ce pas titiller F1 a propos de Match
 
Bonjour AV, PierreJean 😉 , Jordan et le Forum

Merci AV de ta démo

Ici je peux rechercher une date précisée en E1
Code:
Sub Avec_Boucle()
For n = 1 To Range('A65536').End(xlUp).Row
If Cells(n, 1).Value = Range('E1').Value Then Cells(n, 1).Select
Next n
End Sub

Quand n'est-il pour avoir la même possibilité dans le Match proposé par AV ?
Code:
Sub Sans_Boucle()
Cells(Application.Match(Date * 1, [A:A], 0), 1).Select
End Sub
 
bonjour JCGL ,le forum

voila l'adaptation du code d'AV pour la recherche a partir d'une cellule

Cells(Application.Match(Range('C11') * 1, [A:A], 0), 1).Select

edit:
probleme avec le fichier qui prend de l'embonpoint quand on y touche !!!! (surement une des subtilités d'AV)

Message édité par: pierrejean, à: 27/05/2006 09:02
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
15
Affichages
791
Réponses
5
Affichages
915
Réponses
8
Affichages
786
Réponses
10
Affichages
669
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
454
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…