Debutant, besoin d'aide car pb avec Select Case quand ya du text!

Résolu
pier0 Messages postés 67 Date d'inscription mardi 19 juillet 2005 Statut Membre Dernière intervention 2 septembre 2005 - 3 août 2005 à 18:26
pier0 Messages postés 67 Date d'inscription mardi 19 juillet 2005 Statut Membre Derniè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:

10 réponses

pier0 Messages postés 67 Date d'inscription mardi 19 juillet 2005 Statut Membre Derniè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
3
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 20
3 août 2005 à 18:47
Salut,
Le msgbox de ton case else t'affiche quoi ?

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 20
3 août 2005 à 18:50
S'il ne t'affiche rien, vérifie la valeur de k.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 2
3 août 2005 à 18:51
MsgBox ("ligne=" & k & " contient" & Worksheets("Résultats de comparaison").Cells(k, 1).Value

http://www.correzeweb.com
http://www.localetv.com
[ol%28%27http://spaces.msn.com/members/devlog81/%27%29; http://]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
3 août 2005 à 19:55
j'aime po toute ces parenteze moi


Life is short...Learn moreCopy Rights <> Rights to Copy
0
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 2
3 août 2005 à 20:25
apres le dernier value ajoute une parenthese car c msgbox ()

http://www.correzeweb.com
http://www.localetv.com
[ol%28%27http://spaces.msn.com/members/devlog81/%27%29; http://]
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 20
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 !?
0
PCPT Messages postés 13278 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 48
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

PCPT
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 20
3 août 2005 à 23:06
OK avec toi pour l'optimisation mais je n'ai pas osé aller jusque là sans connaitre le but de .


Des fois qu'il veuille faire un traitement différent suivant le nom des jours !?

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
PCPT Messages postés 13278 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 48
3 août 2005 à 23:25
oui, à vouloir trop condenser...
PCPT
0
Rejoignez-nous