Boucle

Lyly601 Messages postés 67 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 16 octobre 2006 - 31 janv. 2006 à 12:06
chahir_s1 Messages postés 4 Date d'inscription vendredi 27 avril 2007 Statut Membre Dernière intervention 12 mai 2009 - 18 oct. 2007 à 20:53
Bonjour a tous,

j'ai une macro qui calcul le cout de stockage sur plateforme :

Function coutstockage() As Currency
Dim cout As Currency
Dim nbpal As Integer
Dim cmm As Integer

nbpal = Cells(8, 2)
cmm = Cells(10, 2)
cout = Cells(11, 2)


Dim nbmois As Integer
nbmois = (nbpal / cmm)


Dim t As Integer
t = 0
Do While t <> nbmois
coutstockage = coutstockage + (cout * (nbpal - (t * cmm)))


t = t + 1
Loop
End Function


Ici le stockage se calcule par palette, le but de cette macro serait au préalable de tester une cellule pour voir si le stockage se calcul a la palette ou au cartondu type si C13 palette alors on lance la macro ci dessus, et si C13 carton, on lance une macro similaire, seule les paramètres
nbpal = Cells(8, 2)
cmm = Cells(10, 2)
cout = Cells(11, 2)
change, pour les calculs on prendra en compte d'autre cellule.

Comment prendre tout ceci en compte?
peut on avoir dans une macro if et do while?

Comment faire svp!!

Merci bcp

aurel

2 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
31 janv. 2006 à 18:22
Salut
Bah tu améliore le paramétrage de ta Function :
Function coutstockage(ByVal TypeEmballage As String) As Currency
et au lancement, tu fais :
Cout = CoutStockage(Cells(3,13)) ' C13 doit s'écrire 3,13 mais pas sûr, pas habitué au VBA
et dans ta function, tu ajoutes ces tests :
Select Case LCase(TypeEmballage) ' LCase pour convertir en minuscules
Case "carton" ' en minuscules
nbpal = Cells(8, 2) ' tu mets les cellules correspondant aux paramètres "carton"
cmm = Cells(10, 2)
cout = Cells(11, 2)
Case "pallette" ' en minuscules
nbpal = Cells(8, 2) ' tu mets les cellules correspondant aux paramètres "palette"
cmm = Cells(10, 2)
cout = Cells(11, 2)
End Select
Le reste ne changeant pas, d'après ce que disais

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
chahir_s1 Messages postés 4 Date d'inscription vendredi 27 avril 2007 Statut Membre Dernière intervention 12 mai 2009
18 oct. 2007 à 20:53
salut a tous
j'ai l'honneur de partager avec vous mon idée
mon projet est la gestion d'accée via le réseaux wifi et sécurité de réseaux wifi
s'il vous plait aider mos
merci
0
Rejoignez-nous