[MACRO] Select case
Bonjour,
J'ai beau chercher, je ne trouve pas de solution ...
Comme c'est un fichier confidentiel je donnes un exemple "Imaginaire"
Dans ma Feuil1 j'ai une cellule "Options" (pour un Nombre d'affichage)
Exemple :
En A1 je vais mettre un nombre
Ensuite
Je clique sur un bouton pour appeler ma macro .
Jusque là tout va bien !
Dans ma macro je voudrais mettre un "select case" (car les options sont nombreuses)
X=Sheets("Feuil1").Range("A1").Value
Select case X
Case 1 Range("B2").Value="Il"
Case 2 Range("B2").Value=Range("B2").Value & "était"
Case 3 Range("B2").Value=Range("B2").Value & "une"
Case 4 Range("B2").Value=Range("B2").Value &"fois"
Etc ...
Ce que je cherche à récupérer c'est si en A1 je mets "1"
Je voudrais récupérer "Il"
Ce que je cherche à récupérer c'est si en A1 je mets "2"
Je voudrais récupérer "Il était"
Ce que je cherche à récupérer c'est si en A1 je mets "3"
Je voudrais récupérer "Il était une"
Ce que je cherche à récupérer c'est si en A1 je mets "4"
Je voudrais récupérer "Il était une fois"
etc.
Pourquoi un Select case ? : j'ai vu sur des forums lorsque nous avons beaucoup de conditions il est mieux de passer par un select case.
Si vous avez une idées autre que le select case je suis preneur
Ou mieux encore si vous avez la solution à mon problème , un grand merci d'avance.
Bonne journée
Eric
Bonjour,
Voici deux exemples parmi tant d'autres :
Sub AvecChoose()
Dim X As Integer
Dim Retour As String
X = Sheets("Feuil1").Range("A1").Value
Retour = Choose(X, "Il", "était", "une", "fois")
MsgBox Retour
End Sub
Sub AvecSelect()
Dim X As Integer
Dim Retour As String
X = Sheets("Feuil1").Range("A1").Value
Select Case X
Case 1: Retour = "Il"
Case 2: Retour = "était"
Case 3: Retour = "une"
Case 4: Retour = "fois"
End Select
MsgBox Retour
End Sub
Bonjour, Salut Theze !
A essayer :
Sub Test()
Dim tx, x%, i%
tx = Split("Il était une fois ")
With Worksheets("Feuil1")
x = .Range("A1")
For i = x To UBound(tx)
tx(i) = ""
Next i
.Range("B2") = Trim(Join(tx))
End With
End Sub
Merci Theze et MFerrand pour votre aide,
Ton exemple avec ton Select Case m’intéresse seulement il m'affiche uniquement le "fois" si en A1 j'ai 4
Je voudrais qu'il m'affiche les cases 1,2,3 et 4 "Il était une fois"
Les autres solutions ne vont pas aller car j'ai trop d'informations à mettre alors que Select case je peux créer plusieurs lignes
Voici en gros ce que j'ai comme conditions si l'on choisis le 1
Sheets("Accueil").Range("E21").Value = "=COUNTIFS(" & info & "!C[11],""Poste 1"")"
Sheets("Accueil").Range("D23").Value = "=COUNTIFS(" & info & "!C[9],""OK""," & NumeroMoteur & "!C[12],""Poste 2"")"
Sheets("Accueil").Range("D25").Value = "=COUNTIFS(" & info & "!C[9],""UNKN.""," & NumeroMoteur & "!C[12],""Poste 3"")"
Sheets("Accueil").Range("D27").Value = "=COUNTIFS(" & info & "!C[9],""SKIP""," & NumeroMoteur & "!C[12],""4"")"
Merci pour votre aide