Deconcatener

cs_montblanc Messages postés 3 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 14 juin 2006 - 11 juin 2006 à 17:25
cs_montblanc Messages postés 3 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 14 juin 2006 - 14 juin 2006 à 18:21
Bonjour!
Je souhaite déconcatener un cellule excel comportant des nombres à deux chiffres.
Avec la fonction STXT j' y arrive bien lorsqu'il s' agit de nombres à un chiffre voir même lorsque le dernier de la liste est à deux ( ex: 1,2,3,4,5,12) par contre cela se complique avec
 (ex: 12,10,15,14,22) Peut -on m'apporter une solution avec  STXT ou tout autre moyen.
Un grand merci à qui m'aidera
                                         
Cordialement JC

4 réponses

michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
12 juin 2006 à 05:38
bonjour

tu peux utiliser la fonction Split à partir d'Excel2000 

Sub extractionDonneesCellule()
Dim Tableau() As String
Dim i As Integer


'separateur=virgule (à adapter en fonction du projet)
Tableau = Split(Range("A1"), ",")


For i = 1 To UBound(Tableau)
MsgBox Tableau(i)
Next i
End Sub

bonne journée
michel
0
cs_montblanc Messages postés 3 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 14 juin 2006
13 juin 2006 à 14:14
Bonjour !
Je te remercie pour ta réponse à mon problème.
Elle a résolu une partie de mon projet.
Seulement voilà, j'ai le résultat qui s'affiche dans une boite de dialogue, or je
souhaiterais que chacun des chiffres déconcatener s'inscrive sur une page additionnelle
dans des cellules differentes.
EX:    12,13,2,6,8,9 dans (A1:A6)
Si je n'abuse pas de ton temps merci de m'informer sur la solution

Cordialement JC
0
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
13 juin 2006 à 19:16
bonsoir

ci joint une adaptation qui inscrit le résultat dans la Feuil2
 
Sub extractionDonneesCellule()
Dim Tableau() As String
Dim i As Integer
'separateur=virgule (à adapter en fonction du projet)
Tableau = Split(Range("A1"), ",")

For i = 1 To UBound(Tableau)
Sheets("Feuil2").Cells( i , 1) = Tableau(i)
Next i
End Sub

bonne soiree
michel
0
cs_montblanc Messages postés 3 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 14 juin 2006
14 juin 2006 à 18:21
Bonsoir!
Merci pour ce module, effectivement cela fonctionne,mais je rencontre
une autre difficulté,c'est que je voudrais que cela s'applique à une plage
Exemple: de A1 à A30 or après la fonction   Range("") je n'arrive pas à faire
accepter d'autre cellule. Résultat tel que ci dessous ma cellule A1 s'est
bien Spliter feuille 2 ligne 1 de A1 à A5 et identiquement jusqu'à la ligne 30 puisque je sais pas lui  faire accepter de spliter en même temps A2 sur feuille 2 ligne 2, A3 sur
ligne 3  etc... Quelle est la solution ?
Mille excuses, je débute, peut être pas par le plus facile, mais ça me passionne.
MERCI

Sub extractionDonneesCellule()
Dim Tableau() As String
Dim i As Integer
'separateur= "virgule"
Tableau = Split(Range("A1"), ",")
For i = 1 To UBound(Tableau)
Sheets("Feuil2").Range("A1:E30") = Tableau
Next i


End Sub
BONNE SOIREE     JC
0
Rejoignez-nous