Je voudrais qu'Excel se place automatiquement sur une cellule en fonction de
la date du jour.
En fait, sur un planning, j'ai donné un nom à chaque semaine (sélection de 5
jours) et il faudrait qu'Excel se place sur la semaine en cours en fonction
de la date d'ouverture du fichier.
J'ai fait des essais (avec les mois) avec:
Private Sub Workbook_Open()
Application.Goto Reference:="Février", Scroll:=True
End Sub
C'est ok mais il faudrait faire le calcul avec la date pour déterminer la
semaine (ça fera 52 lignes ...), et là je trouve pas.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonsoir Nicolas,
Si tu expliquais comment tu as créé ton classeur ?
Le nom de tes feuilles représente des mois... semaine...autre chose ?
Si toutes tes feuilles ont une structure de données similaires, Dans quelle colonne se trouve tes dates ? Ces cellules ont-elles reçu un format "date" ?
Qu'est-ce que tu veux avoir à l'écran, dès que ton classeur s'ouvre ? Exemple : si la date retenue est en A50, Est-ce que la cellule A50 doit se retrouver dans le coin supérieur gauche de l'écran ( comme la cellule A1 )?
Salutations!
"Nicolas" a écrit dans le message de news:3fb2b368$0$235$ Bonsoir,
Je voudrais qu'Excel se place automatiquement sur une cellule en fonction de la date du jour. En fait, sur un planning, j'ai donné un nom à chaque semaine (sélection de 5 jours) et il faudrait qu'Excel se place sur la semaine en cours en fonction de la date d'ouverture du fichier.
J'ai fait des essais (avec les mois) avec:
Private Sub Workbook_Open() Application.Goto Reference:="Février", Scroll:=True End Sub
C'est ok mais il faudrait faire le calcul avec la date pour déterminer la semaine (ça fera 52 lignes ...), et là je trouve pas.
Qq a-t-il une idée ?
Bonsoir Nicolas,
Si tu expliquais comment tu as créé ton classeur ?
Le nom de tes feuilles représente des mois... semaine...autre chose ?
Si toutes tes feuilles ont une structure de données similaires, Dans quelle colonne se trouve tes dates ? Ces cellules
ont-elles reçu un format "date" ?
Qu'est-ce que tu veux avoir à l'écran, dès que ton classeur s'ouvre ? Exemple : si la date retenue est en A50, Est-ce
que la cellule A50 doit se retrouver dans le coin supérieur gauche de l'écran ( comme la cellule A1 )?
Salutations!
"Nicolas" <nico.fr@free.fr> a écrit dans le message de news:3fb2b368$0$235$636a55ce@news.free.fr...
Bonsoir,
Je voudrais qu'Excel se place automatiquement sur une cellule en fonction de
la date du jour.
En fait, sur un planning, j'ai donné un nom à chaque semaine (sélection de 5
jours) et il faudrait qu'Excel se place sur la semaine en cours en fonction
de la date d'ouverture du fichier.
J'ai fait des essais (avec les mois) avec:
Private Sub Workbook_Open()
Application.Goto Reference:="Février", Scroll:=True
End Sub
C'est ok mais il faudrait faire le calcul avec la date pour déterminer la
semaine (ça fera 52 lignes ...), et là je trouve pas.
Si tu expliquais comment tu as créé ton classeur ?
Le nom de tes feuilles représente des mois... semaine...autre chose ?
Si toutes tes feuilles ont une structure de données similaires, Dans quelle colonne se trouve tes dates ? Ces cellules ont-elles reçu un format "date" ?
Qu'est-ce que tu veux avoir à l'écran, dès que ton classeur s'ouvre ? Exemple : si la date retenue est en A50, Est-ce que la cellule A50 doit se retrouver dans le coin supérieur gauche de l'écran ( comme la cellule A1 )?
Salutations!
"Nicolas" a écrit dans le message de news:3fb2b368$0$235$ Bonsoir,
Je voudrais qu'Excel se place automatiquement sur une cellule en fonction de la date du jour. En fait, sur un planning, j'ai donné un nom à chaque semaine (sélection de 5 jours) et il faudrait qu'Excel se place sur la semaine en cours en fonction de la date d'ouverture du fichier.
J'ai fait des essais (avec les mois) avec:
Private Sub Workbook_Open() Application.Goto Reference:="Février", Scroll:=True End Sub
C'est ok mais il faudrait faire le calcul avec la date pour déterminer la semaine (ça fera 52 lignes ...), et là je trouve pas.
Qq a-t-il une idée ?
isabelle
bonjour Nicolas,
si les toutes les dates de l'année sont inscrit sur la feuille,
Private Sub Workbook_Open() Application.Goto Range(Cells.Find(Date).Address), Scroll:=True End Sub
isabelle
Bonsoir,
Je voudrais qu'Excel se place automatiquement sur une cellule en fonction de la date du jour. En fait, sur un planning, j'ai donné un nom à chaque semaine (sélection de 5 jours) et il faudrait qu'Excel se place sur la semaine en cours en fonction de la date d'ouverture du fichier.
J'ai fait des essais (avec les mois) avec:
Private Sub Workbook_Open() Application.Goto Reference:="Février", Scroll:=True End Sub
C'est ok mais il faudrait faire le calcul avec la date pour déterminer la semaine (ça fera 52 lignes ...), et là je trouve pas.
Qq a-t-il une idée ?
bonjour Nicolas,
si les toutes les dates de l'année sont inscrit sur la feuille,
Private Sub Workbook_Open()
Application.Goto Range(Cells.Find(Date).Address), Scroll:=True
End Sub
isabelle
Bonsoir,
Je voudrais qu'Excel se place automatiquement sur une cellule en fonction de
la date du jour.
En fait, sur un planning, j'ai donné un nom à chaque semaine (sélection de 5
jours) et il faudrait qu'Excel se place sur la semaine en cours en fonction
de la date d'ouverture du fichier.
J'ai fait des essais (avec les mois) avec:
Private Sub Workbook_Open()
Application.Goto Reference:="Février", Scroll:=True
End Sub
C'est ok mais il faudrait faire le calcul avec la date pour déterminer la
semaine (ça fera 52 lignes ...), et là je trouve pas.
si les toutes les dates de l'année sont inscrit sur la feuille,
Private Sub Workbook_Open() Application.Goto Range(Cells.Find(Date).Address), Scroll:=True End Sub
isabelle
Bonsoir,
Je voudrais qu'Excel se place automatiquement sur une cellule en fonction de la date du jour. En fait, sur un planning, j'ai donné un nom à chaque semaine (sélection de 5 jours) et il faudrait qu'Excel se place sur la semaine en cours en fonction de la date d'ouverture du fichier.
J'ai fait des essais (avec les mois) avec:
Private Sub Workbook_Open() Application.Goto Reference:="Février", Scroll:=True End Sub
C'est ok mais il faudrait faire le calcul avec la date pour déterminer la semaine (ça fera 52 lignes ...), et là je trouve pas.
Qq a-t-il une idée ?
AV
Pour éviter un plantage si, à l'enregistrement, la feuille active n'est pas celle contenant les dates : A adapter : nom de la feuille - plage d'examen du Find
Private Sub Workbook_Open() Application.Goto Range("Feuil1!" & [Feuil1!A1:IV65536].Find(Date).Address) End Sub
AV
Pour éviter un plantage si, à l'enregistrement, la feuille active n'est pas
celle contenant les dates :
A adapter : nom de la feuille - plage d'examen du Find
Private Sub Workbook_Open()
Application.Goto Range("Feuil1!" & [Feuil1!A1:IV65536].Find(Date).Address)
End Sub
Pour éviter un plantage si, à l'enregistrement, la feuille active n'est pas celle contenant les dates : A adapter : nom de la feuille - plage d'examen du Find
Private Sub Workbook_Open() Application.Goto Range("Feuil1!" & [Feuil1!A1:IV65536].Find(Date).Address) End Sub
AV
gb
Bonjour Nicolas. Voici une autre façon de faire:
Public Sub SelectNomDeLaSemaine() 'Si chaque semaine porte un nom, il suffit de lister 'ces 52 noms quelquepart sur une colonne, ici de I1 à I52 Set ListeDesSemaines = Range("I1:I52") NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays)) NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine) Range(NomDeLaSemaine).Select End Sub
GB
Bonjour Nicolas.
Voici une autre façon de faire:
Public Sub SelectNomDeLaSemaine()
'Si chaque semaine porte un nom, il suffit de lister
'ces 52 noms quelquepart sur une colonne, ici de I1 à I52
Set ListeDesSemaines = Range("I1:I52")
NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays))
NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine)
Range(NomDeLaSemaine).Select
End Sub
Public Sub SelectNomDeLaSemaine() 'Si chaque semaine porte un nom, il suffit de lister 'ces 52 noms quelquepart sur une colonne, ici de I1 à I52 Set ListeDesSemaines = Range("I1:I52") NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays)) NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine) Range(NomDeLaSemaine).Select End Sub
GB
Nicolas
"gb" a écrit dans le message de news:
Bonjour Nicolas. Voici une autre façon de faire:
Public Sub SelectNomDeLaSemaine() 'Si chaque semaine porte un nom, il suffit de lister 'ces 52 noms quelquepart sur une colonne, ici de I1 à I52 Set ListeDesSemaines = Range("I1:I52") NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays)) NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine) Range(NomDeLaSemaine).Select End Sub
GB
Merci beaucoup, ça fonctionne très bien.
Je l'ai adapté comme ceci:
Private Sub Workbook_Open() Set ListeDesSemaines = Range("A23:A74") NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays)) NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine) Application.Goto Reference:=(NomDeLaSemaine), Scroll:=True End Sub
La bonne semaine est automatiquement affichée à l'ouverture du planning.
"gb" <docmartiEnlever@colba.net> a écrit dans le message de
news:OHNxxEdqDHA.2536@tk2msftngp13.phx.gbl...
Bonjour Nicolas.
Voici une autre façon de faire:
Public Sub SelectNomDeLaSemaine()
'Si chaque semaine porte un nom, il suffit de lister
'ces 52 noms quelquepart sur une colonne, ici de I1 à I52
Set ListeDesSemaines = Range("I1:I52")
NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays))
NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine)
Range(NomDeLaSemaine).Select
End Sub
GB
Merci beaucoup, ça fonctionne très bien.
Je l'ai adapté comme ceci:
Private Sub Workbook_Open()
Set ListeDesSemaines = Range("A23:A74")
NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays))
NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine)
Application.Goto Reference:=(NomDeLaSemaine), Scroll:=True
End Sub
La bonne semaine est automatiquement affichée à l'ouverture du planning.
Public Sub SelectNomDeLaSemaine() 'Si chaque semaine porte un nom, il suffit de lister 'ces 52 noms quelquepart sur une colonne, ici de I1 à I52 Set ListeDesSemaines = Range("I1:I52") NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays)) NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine) Range(NomDeLaSemaine).Select End Sub
GB
Merci beaucoup, ça fonctionne très bien.
Je l'ai adapté comme ceci:
Private Sub Workbook_Open() Set ListeDesSemaines = Range("A23:A74") NoSemaine = CInt(Format(Date, "ww", vbMonday, vbFirstFourDays)) NomDeLaSemaine = ListeDesSemaines.Item(NoSemaine) Application.Goto Reference:=(NomDeLaSemaine), Scroll:=True End Sub
La bonne semaine est automatiquement affichée à l'ouverture du planning.