Ouvrir des onglets semaines avec un code VBA

5sem.xlsx (35.18 Ko)

Bonjour

Peut on avec un code VBA ouvrir un fichier avec des onglets nommés semaines de S1 à S53 (j'ai mis 53 semaines en fonction des années ts les 5 a 6 années)

L'idée est qu'a l'ouverture du fichier il s'ouvre sur l'onglet de la semaine en cours

je mets un fichier en PJ

Merci

Bonjour Nelson29

Dans VBAproject (ALT+F11) dans ThisWorkbook, vous mettez ce simple code

Private Sub Workbook_Open()
  Dim NumSem As String
  ' Numéro de semaine à activer
  NumSem = "S" & Format(Date, "ww", vbMonday, vbFirstFourDays)
  ThisWorkbook.Sheets(NumSem).Select
End Sub

A+

Bonjour à tous,

Bonjour Bruno,

Une autre écriture :

Option Explicit

Private Sub Workbook_Open()

Dim I As Integer

    For I = 1 To Sheets.Count
        If Sheets(I).Name = "S" & WorksheetFunction.IsoWeekNum(Date) Then
           Sheets(I).Activate
           Exit For
        End If
    Next I

End Sub

Bonjour,
Et une autre proposition !
Cdlt.

3nelson29.xlsm (65.36 Ko)
Private Sub Workbook_Open()
Dim iWeek As Integer, sheetName As String
    iWeek = DatePart("ww", Date - Weekday(Date, 2) + 4, 2, 2)
    sheetName = "S" & Format(iWeek, "00")
    Application.Goto reference:=ThisWorkbook.Worksheets(sheetName).Cells(1), scroll:=True
End Sub

Merci pour le coup j'ai pris le premier est ca fonctionne parfaitement

Bonne journée

Rechercher des sujets similaires à "ouvrir onglets semaines code vba"