pier0
Messages postés67Date d'inscriptionmardi 19 juillet 2005StatutMembreDernière intervention 2 septembre 2005
-
3 août 2005 à 18:26
pier0
Messages postés67Date d'inscriptionmardi 19 juillet 2005StatutMembreDernière intervention 2 septembre 2005
-
4 août 2005 à 11:35
J'ai un prog qui effectue différente taches et j'ai un pb avec Select Case.
Voila un bout de mon code :
************codeVB**************************************************************
Select Case (Worksheets("Résultats de comparaison").Cells(k, 1).Value Case "LUNDI" ' La case contient LUNDI
MsgBox ("ligne=") & k & (" contient") & Worksheets("Résultats de comparaison").Cells(k, 1).Value
Case "MARDI" ' La case contient MARDI
MsgBox ("ligne=") & k & (" contient") & Worksheets("Résultats de comparaison").Cells(k, 1).Value
Case "MERCREDI" ' La case contient MERCREDI
MsgBox ("ligne=") & k & (" contient") & Worksheets("Résultats de comparaison").Cells(k, 1).Value
Case "JEUDI" ' La case contient JEUDI
MsgBox ("ligne=") & k & (" contient") & Worksheets("Résultats de comparaison").Cells(k, 1).Value
Case "VENDREDI" ' La case contient VENDREDI
MsgBox ("ligne=") & k & (" contient") & Worksheets("Résultats de comparaison").Cells(k, 1).Value
Case "SAMEDI" ' La case contient SAMEDI
MsgBox ("ligne=") & k & (" contient") & Worksheets("Résultats de comparaison").Cells(k, 1).Value
Case "DIMANCHE" ' La case contient DIMANCHE"
MsgBox ("ligne=") & k & (" contient") & Worksheets("Résultats de comparaison").Cells(k, 1).Value
Case Else ' Autres valeurs.
MsgBox ("autre cas!ligne=") & k & (" case=") & (Worksheets("Résultats de comparaison").Cells(k, 1).Value)
End Select
*******************************************************************************
En fait mon pb c'est que les MsgBox me retourne des contenus de cellule excel vide (alors qu'en rélité elle contiennent "LUNDI","MARDI"....) et le program ce retrouve tj dans le Case Else!
Est ce que cela provient d'un pb avec le Select Case utilisé avec du texte????
MERCI A L'AME CHARITABLE VOLANT A MON SECOURS!!!!!!!!!!!!!!!!!!
A voir également:
Debutant, besoin d'aide car pb avec Select Case quand ya du text!
pier0
Messages postés67Date d'inscriptionmardi 19 juillet 2005StatutMembreDernière intervention 2 septembre 2005 4 août 2005 à 11:35
Merci les gars pour vos conseils!
La valeur de k était bonne.
En fait le pb é t tout bête!
Le tableau que je traitait était préalablement rempli par un autre bout de code or celui ci était situé après le Case Select donc je testait un tableau vide que je remplissait après...
La solution tte simple a été de placer le Case Select après avoir rempli le tableau et le tour est joué.
Par ailleurs le select case proposé par pcpt ne peut pas s'appliqué car traitement différent selon le jour
Ciao @+
Pier0
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200620 3 août 2005 à 20:52
Je dirais même plus, on voit plusieurs fois :
Worksheets("Résultats de comparaison").Cells(k, 1).Value
De plus, la cellule contient peut-être des espaces avant et/ou après le mot cherché ?
Le mot est peut-être en minuscule ?
Dans ces cas, solution proposée :
Dim tmp As String
tmp = Trim(UCase(Worksheets("Résultats de comparaison").Cells(k, 1).Value))
Select Case tmp
Case "LUNDI" ' La case contient LUNDI
MsgBox "ligne = " & k & " contient " & tmp
Case "MARDI" ' La case contient MARDI
MsgBox "ligne = " & k & " contient " & tmp
Case "MERCREDI" ' La case contient MERCREDI
MsgBox "ligne = " & k & " contient " & tmp
Case "JEUDI" ' La case contient JEUDI
MsgBox "ligne = " & k & " contient " & tmp
Case "VENDREDI" ' La case contient VENDREDI
MsgBox "ligne = " & k & " contient " & tmp
Case "SAMEDI" ' La case contient SAMEDI
MsgBox "ligne = " & k & " contient " & tmp
Case "DIMANCHE" ' La case contient DIMANCHE"
MsgBox "ligne = " & k & " contient " & tmp
Case Else ' Autres valeurs. MsgBox "autre cas!ligne " & k & " case " & tmp
End Select
Mais il n'en reste pas moins qu'il faut être sùr de la valeur de k, j'insiste.
A moins que le mot cherché soit perdu dans un groupe du genre "Le lundi 1 Aout 2005" et là, le select case n'est plus utilisable.
Attendons donc les précisions de pier0.
-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
PCPT
Messages postés13278Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201848 3 août 2005 à 22:43
salut
et pour raccourcir un peu le select case de CanisLupus :
Select Case tmp
Case "LUNDI","MARDI","MERCREDI","JEUDI","VENDREDI","SAMEDI","DIMANCHE"
MsgBox "ligne = " & k & " contient " & tmp Case Else: MsgBox "autre cas!ligne " & k & " case " & tmp
End Select