Macro

D

Den

Guest
Bonjour a tous

Me re voila avec un petit problème
sur la macro suivante je n'arrive pas à la simplifier
avec
(For mavar = 1 to 22 par exemple il me donne toutes les 10 minutes ?????)

Dim mavar
cboTime1.AddItem " 07:00" & mavar
cboTime1.AddItem " 08:00" & mavar
cboTime1.AddItem " 09:00" & mavar
cboTime1.AddItem " 10:00" & mavar
cboTime1.AddItem " 11:00" & mavar
cboTime1.AddItem " 12:00" & mavar
cboTime1.AddItem " 13:00" & mavar
cboTime1.AddItem " 14:00" & mavar
cboTime1.AddItem " 15:00" & mavar
cboTime1.AddItem " 16:00" & mavar
cboTime1.AddItem " 17:00" & mavar
cboTime1.AddItem " 18:00" & mavar
cboTime1.AddItem " 19:00" & mavar
cboTime1.AddItem " 20:00" & mavar
cboTime1.AddItem " 21:00" & mavar
cboTime1.AddItem " 22:00" & mavar

cboTime2.AddItem " 08:00" & mavar
cboTime2.AddItem " 09:00" & mavar
cboTime2.AddItem " 10:00" & mavar
cboTime2.AddItem " 11:00" & mavar
cboTime2.AddItem " 12:00" & mavar
cboTime2.AddItem " 13:00" & mavar
cboTime2.AddItem " 14:00" & mavar
cboTime2.AddItem " 15:00" & mavar
cboTime2.AddItem " 16:00" & mavar
cboTime2.AddItem " 17:00" & mavar
cboTime2.AddItem " 18:00" & mavar
cboTime2.AddItem " 19:00" & mavar
cboTime2.AddItem " 20:00" & mavar
cboTime2.AddItem " 21:00" & mavar
cboTime2.AddItem " 22:00" & mavar

Voila si il y un genie parmie vous
Merci
Salutations
 
T

Ti

Guest
ta question n'est pas claire. Tu veux quoi ? que ça te donne
"07:10"
"08:10" etc ? dans ce cas mavar ne bouclera pas de 1 à 22...

ou alors c'est autre chose ?

Donne nous la boucle que tu voudrais faire, même si ça ne marche pas, de façon à ce qu'on voit, parce que je suppose que tu ne veux pas garder cette liste de .Additem.
 
T

Ti

Guest
en fait, il suffit d'imbriquer 2 boucles Heures et minutes pour avoir la liste complète. Pour cet exemple j'ai fait un incrément de 8 à 22 pour les heures et de 10 à 50 par pas de 10 pour les minutes. Voilà ce que ça donne

Private Sub UserForm_Initialize()
Dim Heure As Byte, Minute As Byte
For Heure = 8 To 22
For Minute = 10 To 50 Step 10
cbComboBox.AddItem Heure & ":" & Minute
Next Minute
Next Heure
cbComboBox.ListIndex = 0
End Sub
 
D

Den

Guest
Me revoila

sur c'est super mais: pour les minutes Prq = 00 to 30 me renvoi 0 pour 30 ça marche, je n'arrive pas à avoir par Ex: 08 : 00

Private Sub UserForm_Initialize()
Dim Heure As Byte, Minute As Byte
For Heure = 8 To 22
For Minute = 10 To 50 Step 10
cbComboBox.AddItem Heure & ":" & Minute
Next Minute
Next Heure
cbComboBox.ListIndex = 0
End Sub

Encore Merci
@ +
 
@

@+Thierry

Guest
Salut Den et Ti

suis pas sûr d'avoir bien compris, mais si tu veux avoir 8:00 c'est une question de format.....
Essaies comme çà sur la Macro de Ti


Private Sub UserForm_Initialize()
Dim Heure As Byte, Minute As Byte
For Heure = 8 To 22
For Minute = 0 To 50 Step 10
cbComboBox.AddItem Heure & ":" & Format(Minute, "00")

Next Minute
Next Heure
cbComboBox.ListIndex = 0
End Sub

Là çà retourne bien de 10 minutes en 10 minutes de 8:00 à 22:00 avec un affichage des deux 00

bon aprèm
@+Thierry
 
T

Ti

Guest
voilà, comme ça tu auras aussi les 0

Private Sub UserForm_Initialize()
Dim Heure As Byte, Minute As Byte

For Heure = 8 To 22
For Minute = 0 To 50 Step 10
cbComboBox.AddItem Format(Heure, "00") & ":" & Format(Minute, "00")
Next Minute
Next Heure
cbComboBox.ListIndex = 0
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
314 653
Messages
2 111 578
Membres
111 205
dernier inscrit
Adrien25