Bonsoir,
Je cherche comment faire pour que lorsque le fichier s'ouvre, dans l'onglet planning et qu'il se positionne sur la date du jour et que les 12 jours précédents soient visibles.
donc par exemple si nous sommes le 07-10-21, après la colonne B , la date qui apparaît est le 21-09-21(colonne CH).
Bonsoir.
Essayez ceci dans le module ThisWorkbook :
VB:
Private Sub Workbook_Open()
Dim C As Long
C = WorksheetFunction.Match(Feuil1.[B1], Feuil1.[C2:BAA2], 1) + 2
Application.Goto Feuil1.Cells(2, C)
ActiveWindow.ScrollColumn = IIf(C > 16, C - 13, 3)
End Sub
N'oubliez pas de l'enregistrer en tant que Classeur prenant en charge les macros, *.xlsm
Private Sub Workbook_Open()
Application.ScreenUpdating = False
With Feuil1 'CodeName
.Visible = xlSheetVisible 'au cas où...
Application.Goto .Cells(2, Application.Match(CLng(Date), .Rows(2))), True 'cadrage
End With
ActiveWindow.SmallScroll ToRight:=-12 'décale
End Sub
Edit : bonsoir Bernard, comme d'habitude XLD n'était pas rafraîchi !
Private Sub Workbook_Open()
Dim n&
With Sheets("Feuil1")
n = Application.Match(CLng(Date), .Rows(2)) - 15
Application.Goto .Range("c2").Offset(, n), True
End With
End Sub
Bonjour, je recherche un code pour ouvrir des feuilles et que la sélection se positionne sur la date du jour (ou si possible sur le mois concerné😁, mais le jour fera l'affaire). dans mon fichier il y aura plusieurs feuilles (une vingtaine). Je mets un exemple de mon fichier. Merci
excel-downloads.com
Merci de votre aide
Stephane
Pièces jointes
Essai d'agenda qui doit s'ouvrir sur la date du jour Merci de votre aide.xlsx
Le fichier en retour avec une macro dans le module de ThisWorkbook :
VB:
Private Sub Workbook_Open()
Dim n&
With Sheets("Jour par jour")
On Error Resume Next
n = Application.Match(CLng(Date), .Columns(1), 0)
If n > 0 Then Application.Goto .Range("a1").Offset(n - 1), True
End With
End Sub