bonsoir,
j'ai créé 1 classeur de contrôle de caisses avec pour chaque date trois
feuilles: "caisse 02.01.04", "coffre 02.01.04", " journal 02.01.04" ceci pour
chaque jour de la semaine sauf le dimanche . j'ai créé un modèle mais chaque
mois, je suis obligé de renommer les onglets en fonction des dates du mois et
78 onglets, c'est fastidieux!
alors si qqu'un peut m'aider...
merci.
bonsoir,
j'ai créé 1 classeur de contrôle de caisses avec pour chaque date trois
feuilles: "caisse 02.01.04", "coffre 02.01.04", " journal 02.01.04" ceci pour
chaque jour de la semaine sauf le dimanche . j'ai créé un modèle mais chaque
mois, je suis obligé de renommer les onglets en fonction des dates du mois et
78 onglets, c'est fastidieux!
alors si qqu'un peut m'aider...
merci.
bonsoir,
j'ai créé 1 classeur de contrôle de caisses avec pour chaque date trois
feuilles: "caisse 02.01.04", "coffre 02.01.04", " journal 02.01.04" ceci pour
chaque jour de la semaine sauf le dimanche . j'ai créé un modèle mais chaque
mois, je suis obligé de renommer les onglets en fonction des dates du mois et
78 onglets, c'est fastidieux!
alors si qqu'un peut m'aider...
merci.
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaîne
comme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaîne
comme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaîne
comme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaîne
comme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaîne
comme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaîne
comme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaînecomme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
Bonjour,
en fait J1 représente le premier jour ouvrable du mois et
ça va jusqu'à J27 en fonction du nb de jours ouvrables,
sachant que seul le dimanche n'est pas 1 jour ouvrable
dans mon cas. J'ai du utiliser J1...J27 dans les onglets
de mon modèle car chaque feuille a des liaisons avec les
précédentes.
j'espère avoir été plus clair?
merci de l'intêret porté à cette question.
bonne journée
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaîne
comme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Bonjour,
en fait J1 représente le premier jour ouvrable du mois et
ça va jusqu'à J27 en fonction du nb de jours ouvrables,
sachant que seul le dimanche n'est pas 1 jour ouvrable
dans mon cas. J'ai du utiliser J1...J27 dans les onglets
de mon modèle car chaque feuille a des liaisons avec les
précédentes.
j'espère avoir été plus clair?
merci de l'intêret porté à cette question.
bonne journée
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaînecomme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
Bonjour,
en fait J1 représente le premier jour ouvrable du mois et
ça va jusqu'à J27 en fonction du nb de jours ouvrables,
sachant que seul le dimanche n'est pas 1 jour ouvrable
dans mon cas. J'ai du utiliser J1...J27 dans les onglets
de mon modèle car chaque feuille a des liaisons avec les
précédentes.
j'espère avoir été plus clair?
merci de l'intêret porté à cette question.
bonne journée
Bonsoir,
Tu pourrais sans doute utiliser le code ci-dessous, ou l'adapter à ton besoin.
La procédure CreerMonClasseur utilise la fonction TypeJour de Laurent Longre,
légèrement modifiée pour ne retenir comme dates valides dans un mois que les
jours qui ne sont ni des dimanches ni des fériés (français). Par défaut, c'est
le mois de la date courante qui sert de base à la création d'un nouveau
classeur. Après recopie du code dans un module standard (de ton perso.xls par
exemple) tu peux affecter la procédure à un bouton de barre d'outils pour
l'exécuter quand tu en as besoin. (Je n'ai pas traité la question des liaisons
que tu évoques, par manque de précisions sur ce point). Cette approche ne
nécessite pas que la création de nouveaux classeurs soit basée sur un modèle.
Elle peut constituer pour toi un point de départ. Reviens si besoin.
'======================== > Sub CreerMonClasseur()
Dim NbFeuilles&, Arr, dt As Date
Dim i As Byte, j As Byte
Dim NbJoursMoisCourant As Byte
NbFeuilles = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = 1
Arr = Array("caisse ", "coffre ", "journal ")
NbJoursMoisCourant = Day(DateSerial(Year(Date), Month(Date) + 1, 0))
Workbooks.Add
For i = 1 To NbJoursMoisCourant
dt = DateSerial(Year(Date), Month(Date), i)
If TYPEJOUR(dt) = 0 Then
For j = 0 To 2
Sheets.Add(after:=Sheets(Sheets.Count)).Name = Arr(j) & Format(dt,
"dd.mm.yy")
Next j
End If
Next i
Application.DisplayAlerts = False
Sheets(1).Delete
Application.DisplayAlerts = True
Application.SheetsInNewWorkbook = NbFeuilles
Sheets(1).Select
End Sub
'Cette fonction renvoie 0 si le jour passé en paramètre est un jour de semaine,
'1 s'il s'agit d'un samedi ou d'un dimanche et 2 s'il s'agit d'un jour férié.
'Valide jusqu'en 2099 et pour les jours fériés français
Function TYPEJOUR(D As Date)
'L. Longre
Dim A As Integer, T As Integer
Dim LP As Date, LD As Long
Dim Toto As Long
A = Year(D)
If A > 2099 Then
TYPEJOUR = CVErr(xlErrValue)
Exit Function
End If
LD = Int(D)
If LD <= 2 Then
If LD = 1 Then TYPEJOUR = 2
Exit Function
End If
T = (((255 - 11 * (A Mod 19)) - 21) Mod 30) + 21
LP = DateSerial(A, 3, 2) + T + (T > 48) _
+ 6 - ((A + A 4 + T + (T > 48) + 1) Mod 7)
Select Case D
' Jours fériés mobiles
Case Is = LP, Is = LP + 38, Is = LP + 49
TYPEJOUR = 2
' Jours fériés fixes
Case Is = DateSerial(A, 1, 1), Is = DateSerial(A, 5, 1), _
Is = DateSerial(A, 5, 8), Is = DateSerial(A, 7, 14), _
Is = DateSerial(A, 8, 15), Is = DateSerial(A, 11, 1), _
Is = DateSerial(A, 11, 11), Is = DateSerial(A, 12, 25)
TYPEJOUR = 2
Case Else
' Dimanche
If Weekday(D, vbMonday) > 6 Then TYPEJOUR = 1
End Select
End Function
'======================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaînecomme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
Bonjour,
en fait J1 représente le premier jour ouvrable du mois et
ça va jusqu'à J27 en fonction du nb de jours ouvrables,
sachant que seul le dimanche n'est pas 1 jour ouvrable
dans mon cas. J'ai du utiliser J1...J27 dans les onglets
de mon modèle car chaque feuille a des liaisons avec les
précédentes.
j'espère avoir été plus clair?
merci de l'intêret porté à cette question.
bonne journée
Bonsoir,
Tu pourrais sans doute utiliser le code ci-dessous, ou l'adapter à ton besoin.
La procédure CreerMonClasseur utilise la fonction TypeJour de Laurent Longre,
légèrement modifiée pour ne retenir comme dates valides dans un mois que les
jours qui ne sont ni des dimanches ni des fériés (français). Par défaut, c'est
le mois de la date courante qui sert de base à la création d'un nouveau
classeur. Après recopie du code dans un module standard (de ton perso.xls par
exemple) tu peux affecter la procédure à un bouton de barre d'outils pour
l'exécuter quand tu en as besoin. (Je n'ai pas traité la question des liaisons
que tu évoques, par manque de précisions sur ce point). Cette approche ne
nécessite pas que la création de nouveaux classeurs soit basée sur un modèle.
Elle peut constituer pour toi un point de départ. Reviens si besoin.
'======================== > Sub CreerMonClasseur()
Dim NbFeuilles&, Arr, dt As Date
Dim i As Byte, j As Byte
Dim NbJoursMoisCourant As Byte
NbFeuilles = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = 1
Arr = Array("caisse ", "coffre ", "journal ")
NbJoursMoisCourant = Day(DateSerial(Year(Date), Month(Date) + 1, 0))
Workbooks.Add
For i = 1 To NbJoursMoisCourant
dt = DateSerial(Year(Date), Month(Date), i)
If TYPEJOUR(dt) = 0 Then
For j = 0 To 2
Sheets.Add(after:=Sheets(Sheets.Count)).Name = Arr(j) & Format(dt,
"dd.mm.yy")
Next j
End If
Next i
Application.DisplayAlerts = False
Sheets(1).Delete
Application.DisplayAlerts = True
Application.SheetsInNewWorkbook = NbFeuilles
Sheets(1).Select
End Sub
'Cette fonction renvoie 0 si le jour passé en paramètre est un jour de semaine,
'1 s'il s'agit d'un samedi ou d'un dimanche et 2 s'il s'agit d'un jour férié.
'Valide jusqu'en 2099 et pour les jours fériés français
Function TYPEJOUR(D As Date)
'L. Longre
Dim A As Integer, T As Integer
Dim LP As Date, LD As Long
Dim Toto As Long
A = Year(D)
If A > 2099 Then
TYPEJOUR = CVErr(xlErrValue)
Exit Function
End If
LD = Int(D)
If LD <= 2 Then
If LD = 1 Then TYPEJOUR = 2
Exit Function
End If
T = (((255 - 11 * (A Mod 19)) - 21) Mod 30) + 21
LP = DateSerial(A, 3, 2) + T + (T > 48) _
+ 6 - ((A + A 4 + T + (T > 48) + 1) Mod 7)
Select Case D
' Jours fériés mobiles
Case Is = LP, Is = LP + 38, Is = LP + 49
TYPEJOUR = 2
' Jours fériés fixes
Case Is = DateSerial(A, 1, 1), Is = DateSerial(A, 5, 1), _
Is = DateSerial(A, 5, 8), Is = DateSerial(A, 7, 14), _
Is = DateSerial(A, 8, 15), Is = DateSerial(A, 11, 1), _
Is = DateSerial(A, 11, 11), Is = DateSerial(A, 12, 25)
TYPEJOUR = 2
Case Else
' Dimanche
If Weekday(D, vbMonday) > 6 Then TYPEJOUR = 1
End Select
End Function
'======================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaîne
comme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Bonjour,
en fait J1 représente le premier jour ouvrable du mois et
ça va jusqu'à J27 en fonction du nb de jours ouvrables,
sachant que seul le dimanche n'est pas 1 jour ouvrable
dans mon cas. J'ai du utiliser J1...J27 dans les onglets
de mon modèle car chaque feuille a des liaisons avec les
précédentes.
j'espère avoir été plus clair?
merci de l'intêret porté à cette question.
bonne journée
Bonsoir,
Tu pourrais sans doute utiliser le code ci-dessous, ou l'adapter à ton besoin.
La procédure CreerMonClasseur utilise la fonction TypeJour de Laurent Longre,
légèrement modifiée pour ne retenir comme dates valides dans un mois que les
jours qui ne sont ni des dimanches ni des fériés (français). Par défaut, c'est
le mois de la date courante qui sert de base à la création d'un nouveau
classeur. Après recopie du code dans un module standard (de ton perso.xls par
exemple) tu peux affecter la procédure à un bouton de barre d'outils pour
l'exécuter quand tu en as besoin. (Je n'ai pas traité la question des liaisons
que tu évoques, par manque de précisions sur ce point). Cette approche ne
nécessite pas que la création de nouveaux classeurs soit basée sur un modèle.
Elle peut constituer pour toi un point de départ. Reviens si besoin.
'======================== > Sub CreerMonClasseur()
Dim NbFeuilles&, Arr, dt As Date
Dim i As Byte, j As Byte
Dim NbJoursMoisCourant As Byte
NbFeuilles = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = 1
Arr = Array("caisse ", "coffre ", "journal ")
NbJoursMoisCourant = Day(DateSerial(Year(Date), Month(Date) + 1, 0))
Workbooks.Add
For i = 1 To NbJoursMoisCourant
dt = DateSerial(Year(Date), Month(Date), i)
If TYPEJOUR(dt) = 0 Then
For j = 0 To 2
Sheets.Add(after:=Sheets(Sheets.Count)).Name = Arr(j) & Format(dt,
"dd.mm.yy")
Next j
End If
Next i
Application.DisplayAlerts = False
Sheets(1).Delete
Application.DisplayAlerts = True
Application.SheetsInNewWorkbook = NbFeuilles
Sheets(1).Select
End Sub
'Cette fonction renvoie 0 si le jour passé en paramètre est un jour de semaine,
'1 s'il s'agit d'un samedi ou d'un dimanche et 2 s'il s'agit d'un jour férié.
'Valide jusqu'en 2099 et pour les jours fériés français
Function TYPEJOUR(D As Date)
'L. Longre
Dim A As Integer, T As Integer
Dim LP As Date, LD As Long
Dim Toto As Long
A = Year(D)
If A > 2099 Then
TYPEJOUR = CVErr(xlErrValue)
Exit Function
End If
LD = Int(D)
If LD <= 2 Then
If LD = 1 Then TYPEJOUR = 2
Exit Function
End If
T = (((255 - 11 * (A Mod 19)) - 21) Mod 30) + 21
LP = DateSerial(A, 3, 2) + T + (T > 48) _
+ 6 - ((A + A 4 + T + (T > 48) + 1) Mod 7)
Select Case D
' Jours fériés mobiles
Case Is = LP, Is = LP + 38, Is = LP + 49
TYPEJOUR = 2
' Jours fériés fixes
Case Is = DateSerial(A, 1, 1), Is = DateSerial(A, 5, 1), _
Is = DateSerial(A, 5, 8), Is = DateSerial(A, 7, 14), _
Is = DateSerial(A, 8, 15), Is = DateSerial(A, 11, 1), _
Is = DateSerial(A, 11, 11), Is = DateSerial(A, 12, 25)
TYPEJOUR = 2
Case Else
' Dimanche
If Weekday(D, vbMonday) > 6 Then TYPEJOUR = 1
End Select
End Function
'======================== >
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !-----Message d'origine-----
Bonjour,
Je ne comprends pas très bien ce que représentent
J1 .... J27 et donc comment constituer une chaînecomme :
journal 02.01.04 à partir de journal Jxx
--
Amicales Salutations
Bonjour,
en fait J1 représente le premier jour ouvrable du mois et
ça va jusqu'à J27 en fonction du nb de jours ouvrables,
sachant que seul le dimanche n'est pas 1 jour ouvrable
dans mon cas. J'ai du utiliser J1...J27 dans les onglets
de mon modèle car chaque feuille a des liaisons avec les
précédentes.
j'espère avoir été plus clair?
merci de l'intêret porté à cette question.
bonne journée