VBA HEURES
flyersgaoler
-
lermite222 Messages postés 8724 Date d'inscription Statut Contributeur Dernière intervention -
lermite222 Messages postés 8724 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai déja codé en VBA excel un code pour faire apparaitre 12 feuilles dont les mois sont représentés. J'ai en plus réussi à mettre un code qui met le nom de chaque feuille dans une case. Cependant, je ne sais pas comment mettre les heures. En effet, sur chaque feuille, je dois mettre 4 tranches d'heure soit de 0:00 à 5h59, de 6h a 11h59, de 12 a 17h59 et 18h a 23h59. Je dois donc mettre ces 4 tranches dheures sur chacune de mes feuilles, mais je n'y arrive pas. Voici le code que j'ai fait. Merci a l'avance pour votre aide
Sub CreerAnnee_clic()
For I = 1 To 12
ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = Format(30 * I, "mmmm")
Next I
Application.ScreenUpdating = False
For Each x In ActiveWorkbook.Sheets
x.Activate
[D1] = ActiveSheet.Name
Next
End Sub
J'ai déja codé en VBA excel un code pour faire apparaitre 12 feuilles dont les mois sont représentés. J'ai en plus réussi à mettre un code qui met le nom de chaque feuille dans une case. Cependant, je ne sais pas comment mettre les heures. En effet, sur chaque feuille, je dois mettre 4 tranches d'heure soit de 0:00 à 5h59, de 6h a 11h59, de 12 a 17h59 et 18h a 23h59. Je dois donc mettre ces 4 tranches dheures sur chacune de mes feuilles, mais je n'y arrive pas. Voici le code que j'ai fait. Merci a l'avance pour votre aide
Sub CreerAnnee_clic()
For I = 1 To 12
ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = Format(30 * I, "mmmm")
Next I
Application.ScreenUpdating = False
For Each x In ActiveWorkbook.Sheets
x.Activate
[D1] = ActiveSheet.Name
Next
End Sub
A voir également:
- Vba heure actuelle
- Position actuelle - Guide
- Changement d'heure - Guide
- Heure de connexion whatsapp qui ne changé pas - Accueil - WhatsApp
- Cdg heure d'arrivée a destination shein - Forum Consommation & Internet
- L'indice n'appartient pas à la sélection vba - Forum VB / VBA
3 réponses
bonjour
tu as de la chance que bilou est le seul au monde à considérer que l'année 1900 soit une année bissextile.... sinon tu n'aurais jamais eu ton mois de février : 31 + 28 = 59 : 30 * 2 = 60, soit le 1er mars
modifie cette ligne pour si des fois bilou décidait de ne pas avoir une erreur dans excel
ActiveSheet.Name = Format(30 * I, "mmmm")
par :
ActiveSheet.Name = Format(datevalue("01/" & I & "/2000"), "mmmm")
pour ta boucle :
for i = 0 to 3
cells(1,1).offset(i,0) = (i*6)/24
cells(1,2).offset(i,0) = cells(1,1).offset(i,0) + timevalue("05:59")
next i
A1,A2,A3,A4 recoivent tes 4 heures de debut
B1,B2,B3,B4 tes 4 heures de fin
à mettre au format horaire
tu as de la chance que bilou est le seul au monde à considérer que l'année 1900 soit une année bissextile.... sinon tu n'aurais jamais eu ton mois de février : 31 + 28 = 59 : 30 * 2 = 60, soit le 1er mars
modifie cette ligne pour si des fois bilou décidait de ne pas avoir une erreur dans excel
ActiveSheet.Name = Format(30 * I, "mmmm")
par :
ActiveSheet.Name = Format(datevalue("01/" & I & "/2000"), "mmmm")
pour ta boucle :
for i = 0 to 3
cells(1,1).offset(i,0) = (i*6)/24
cells(1,2).offset(i,0) = cells(1,1).offset(i,0) + timevalue("05:59")
next i
A1,A2,A3,A4 recoivent tes 4 heures de debut
B1,B2,B3,B4 tes 4 heures de fin
à mettre au format horaire
Merci Wilfred,
Mais je voudrais savoir comment je peux mettre les heures sur mes 12 feuilles, car pour l'instant les heures apparaissent seulement pour le mois de décembre.
Merci encore
Mais je voudrais savoir comment je peux mettre les heures sur mes 12 feuilles, car pour l'instant les heures apparaissent seulement pour le mois de décembre.
Merci encore
Bonjour,
En modifiant un peu le code de Wilfried
A+
En modifiant un peu le code de Wilfried
Sub CreerAnnee_clic() Dim i As Integer, e As Integer, D As Single For i = 1 To 12 ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count) ActiveSheet.Name = Format(DateValue("01/" & i & "/2000"), "mmmm") For e = 0 To 3 D = (e * 6) / 24 Cells(1, e + 1) = Format(D, "hh:mm") & " à " & _ Format(D + TimeValue("05:59"), "hh:mm") Next e Range("D2") = ActiveSheet.Name Next i End Sub
A+