Lire une cellule avec plusieurs valeurs séparées par ";" [Résolu]

Signaler
Messages postés
10
Date d'inscription
jeudi 3 juillet 2008
Statut
Membre
Dernière intervention
13 janvier 2009
-
piloulac
Messages postés
21
Date d'inscription
dimanche 10 juin 2007
Statut
Membre
Dernière intervention
28 décembre 2008
-
Bonjour à tous,

Je suis en train de créer un formulaire sur Excel et pour des raisons pratiques, j'enregistre plusieurs valeurs de CheckBox dans une seule cellule.

Ex. simplifié :
Range("A1") = CheckBox1.Value & ";" & CheckBox2.Value

Mais je ne sais pas comment réattribuer ces valeurs enregistrées à chaque CheckBox quand je veux consulter mon formulaire avec mes données enregistrées.

J'espère que je suis assez clair

Auriez vous une idée de la manière de lire la cellule ?

3 réponses

Messages postés
578
Date d'inscription
vendredi 26 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2010
4
Bonjour Vampirelo

Option Base 0
...
Dim cellules() as String
cellules = Split(Range("A1").Value, ";")
CheckBox1.Value = cellules(0)
CheckBox2.Value = cellules(1)

Amicalement
Messages postés
10
Date d'inscription
jeudi 3 juillet 2008
Statut
Membre
Dernière intervention
13 janvier 2009

Ca marche impécable !
Merci beaucoup :)
Messages postés
21
Date d'inscription
dimanche 10 juin 2007
Statut
Membre
Dernière intervention
28 décembre 2008

Super cette fonction de Orohena


Pour récupérer plusieurs valeurs, séparés par un ";" :



''D'abord, une petite fonction(NbSousChaine) très commode permettant de compter des occurences de caractères dans une chaîne.



Function NbSousChaine(Chaine As String, Ch As String, Optional RC As Integer = 1) As Long
  NbSousChaine= (Len(Chaine) - Len(Replace(Chaine, Ch, "", , , RC))) / Len(Ch)
End Function

''Ensuite une adaptation du code de Orohena :

Sub lireplusieursdatas()
Dim cellules() As String
Dim Sous_Chaine, nb, i
nb = NbSousChaine(Range("A1").Text, ";")
cellules = Split(Range("A1").Value, Chr(59))
For i = 0 To nb
Sous_Chaine = cellules(i)
Next
End Sub