Macro Se positionner sur la première cellule

lalalie3

XLDnaute Nouveau
Bonjour,
J'ai une feuille de calcule où il y a une macro avec bouton qui m'affiche la date de jour d'un planning, sachant qu'une seule et meme date a 42 lignes et qu'il est annuel.

Mon soucis est qu'elle me positionne sur la dernière cellule correspondante alors que je voudrais que ce soit la première.

Voila mon code :

Private Sub CommandButton3_Click()
'bouton aujourd'hui
Sheets("Planning").Select

Range("a1") = "=MATCH(TODAY(),F:F)"
Cells(Range("a1"), "F").Activate
Range("a1").ClearContents
End Sub

Je ne trouve pas ce que je dois ajouter et où.

Je reste a votre dispo si je ne suis pas clair.
Merci par avance pour votre aide.
 

kjin

XLDnaute Barbatruc
Re : Macro Se positionner sur la première cellule

Bonjour,
Code:
Private Sub CommandButton3_Click()
    Sheets("Planning").Select
    Range("F" & Application.Match(CLng(VBA.Date), Range("F:F"), 0)).Select
End Sub
A+
kjin
 

lalalie3

XLDnaute Nouveau
Re : Macro Se positionner sur la première cellule

Bonjour Kjin,
Merci pour le nouveau code qui est lui beaucoup plus rapide que le mien, mais j'arrive toujours a la dernière ligne (la 42 ème) alors que je voudrais que ce soit la première de ces 42 lignes.
 

stefan373

XLDnaute Occasionnel
Bonsoir lalali et le forum.

Pas sur d'avoir bien compris. Peut-être ainsi.:confused:
Code:
Sheets("Planning").Select
        Range("a1") = "=MATCH(TODAY(),F:F)"
        Cells(Range("a1"), "F").Activate
        Range("a1").ClearContents
        Range("f3").Select

En ajoutant la dernière ligne ci-jointe.

A +
 

lalalie3

XLDnaute Nouveau
Re : Macro Se positionner sur la première cellule

Pour ceux et celles qui en auraient besoin.

La réponse est :

Option Explicit
Private Sub CommandButton3_Click()
'Bouton aujourd'hui
Dim w As Worksheet
Dim l As Double
Set w = Worksheets("Planning")
On Error Resume Next
l = Application.WorksheetFunction.Match(CDbl(Date), w.Range("F:F"), 0)
On Error GoTo 0
If l = 0 Then
MsgBox "La date d'aujourd'hui n'a pas été trouvée dans le planning"
Exit Sub
End If
w.Activate
w.Cells(l, "F").Activate
Set w = Nothing
End Sub
 

Discussions similaires

Réponses
7
Affichages
321

Membres actuellement en ligne

Statistiques des forums

Discussions
312 196
Messages
2 086 099
Membres
103 116
dernier inscrit
kutobi87