titoo22
Messages postés15Date d'inscriptionvendredi 15 décembre 2000StatutMembreDernière intervention12 août 2008
-
9 juil. 2008 à 13:00
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009
-
9 juil. 2008 à 14:07
Salut tout le monde,
J'aimerais assigner une valeurs (parmis 4 possibles en string) aux cellules de la colonne D en fonction de la valeur string aussi que prennent les cellules de la colonne C. Je ne sais pas trop comment m'y prendre. J'ai commencé à esquisser un début de programme. Dites moi ce que vous en pensez et d'après vous comment je devrais le continuer.
'Macro créée le 08/07/08 par MOI
'Attribution des code plateforme aux centres
Sub code_pt_centre()
counter = 0
Range("C3").Select
C = C3 + counter
D = D3 + counter
While C <> ""
'BO? utilisé pour renvoyer toutes les cellules ayant BO+1 caractère _
même principe pour HO?
if C="BIS" or "BO?" or "CFS" or "CPL" or "HO?" or "LAC" or "LLJ" or "MIM" _
or "MES" or "MOC" or "POR" or "PAL" or "SME" or "SEB" or "SEI" _
or "SSC"
then D="BAC"
End If
counter = counter + 1
Wend
End Sub
Comme vous le voyez déjà, j'ai un problème avec mon if. Il me dit que derrière le if il me faut un then alors qu'il est présent et derrière le then qu'il attend un numéro de ligne ou étiquette ou instruction ou fin d'instruction. Je ne sais pas comment faire pour le débogage. Aidez moi svp !!!
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009 9 juil. 2008 à 14:07
Salut,
1. Tu as mal posté c'est du vba et non du vb6
2. Utilise "Select Case"
Ton code n'est pas très "propre"
Sub code_pt_centre()
counter = 0
Range("C3").Select
C = C3 + counter
D = D3 + counter
While C <> ""
'BO? utilisé pour renvoyer toutes les cellules ayant BO+1 caractère _
même principe pour HO?
if C="BIS" or "BO?" or "CFS" or "CPL" or "HO?" or "LAC" or "LLJ" or "MIM" _
or "MES" or "MOC" or "POR" or "PAL" or "SME" or "SEB" or "SEI" _
or "SSC"
then D="BAC"
--> Ton erreur est au niveau de ton then. Il doit etre sur la meme ligne que ton if
if conditions then
Traitement1
else
Traitement2
end if
De plus si ta condition ne renvoit qu'une ligne tu peux l'écrire : if condition then résultat
End If
counter = counter + 1
Wend
End Sub
Sinon pour ton programe dans ta boucle utilise le select
Select case C
Case "BIS"
D="BAC"
Case ..
|
|
End Select