pb de séparateur dans cellule

D

daniel

Guest
Bonjour à tous,

Dans une même cellule, j'ai plusieurs chaines de caractères, séparées par des points virgules (ex, en A1: 'terme 1; terme2 ; terme 3').


Mon fol désir serait de pouvoir récupérer séparément ces chaines dans un USF ('terme 1' ' terme2 'terme 3'), dans autant de textbox qu'il y aurait de termes. Ce qui impliquerait la création de textbox à la volée en fonction du nombre de séparateurs ';'.

Mais là, franchement, c'est au dessus de mes limites en VBA... J'ai trouvé plusieurs posts sur les séparateurs pour l'iimportation/exportation dans des fichiers texte, mais cela ne m'a pas aidé.

Si quelqu'un(e) peut 'amorcer' la solution, je pense (j'espère, du moins... ) que je pourrai me débrouiller ensuite...

Merci pour votre aide,

Daniel
 

MichelXld

XLDnaute Barbatruc
bonjour

cette démo de @+Thierry devrait t'aider pour créer les TextBox dynamiquement

Lien supprimé


et pour extraire les textes séparés par les points virgule ';' tu pourras utiliser


Dim Tableau() As String
Dim i As Byte

Tableau = Split(Range('A1'), ';')
For i = 0 To UBound(Tableau)
MsgBox Tableau(i)
Next i



le nombre de TextBox à créer étant UBound(Tableau) + 1


bonne soiree
MichelXld

Message édité par: MichelXld, à: 05/07/2005 18:20
 
D

daniel

Guest
Waoooh,

un grand merci Michel et...Thierry, of course !

Je me suis aidé de ton code et de celui de Thierry pour écrire ce code, dans un bouton de commande:

Private Sub CommandButton1_Click()
Dim Tableau() As String
Dim i As Byte, T As Byte, L As Byte
Dim TextBoxing As Variant

Tableau = Split(Range('A1'), ';')
For i = 0 To UBound(Tableau)
Set TextBoxing = Me.Controls.Add('Forms.TextBox.1')
L=10
With TextBoxing
.Left = L: .Top = T: .Width = 45: .Height = 15
.Value = Tableau(i)
End With
T = T + 15
Next i
Set TextBoxing = Nothing
End Sub

Bonne soirée !!

Daniel
 

Statistiques des forums

Discussions
312 520
Messages
2 089 286
Membres
104 087
dernier inscrit
falconbe