Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Merci une nouvelle fois, c'est parfait.
"MichDenis" a écrit dans le message de news:
Sub test()
Dim Texte As String, LeTexte As String Dim X As Long, A As Long
'En supposant que le texte de départ se trouve 'en cellule A1 With Feuil1 Texte = .Range("A1") 'Vide le contenu de la zone de texte si besoin .Shapes("Toto").OLEFormat.Object.Text = "" 'Détermine le nombre de caractère de notre variable X = Len(Texte) If X > 255 Then 'Boucle pour chaque tranche de 255 caractères For A = 1 To X Step 255 'Scinde la chaîne en 255 carac. à ajouter LeTexte = Mid(Texte, A, 255) 'ajoute la chaîne au contrôle 'Nom de la feuille à adapter .Shapes("toto").TextFrame.Characters(A, 255).Text = LeTexte Next Else .Shapes("Toto").OLEFormat.Object.Text = Texte End If End With End Sub
a écrit dans le message de groupe de discussion : # Bonjour,
J'ai une zone texte dans une feuille que je souhaitais alimenter par vba.
Worksheets("FEUIL1").Shapes("Zone de texte 1").OLEFormat.Object.Text > zonetexte
la variable "zonetexte" pouvant avoir un nombre de caractères variable mais fréquemment supérieur à 255 caractères.
Comment forcer cette limite ?
Merci
Merci une nouvelle fois, c'est parfait.
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
666FDAD1-FB6B-4191-BE5B-BAB32725A32D@microsoft.com...
Sub test()
Dim Texte As String, LeTexte As String
Dim X As Long, A As Long
'En supposant que le texte de départ se trouve
'en cellule A1
With Feuil1
Texte = .Range("A1")
'Vide le contenu de la zone de texte si besoin
.Shapes("Toto").OLEFormat.Object.Text = ""
'Détermine le nombre de caractère de notre variable
X = Len(Texte)
If X > 255 Then
'Boucle pour chaque tranche de 255 caractères
For A = 1 To X Step 255
'Scinde la chaîne en 255 carac. à ajouter
LeTexte = Mid(Texte, A, 255)
'ajoute la chaîne au contrôle
'Nom de la feuille à adapter
.Shapes("toto").TextFrame.Characters(A, 255).Text = LeTexte
Next
Else
.Shapes("Toto").OLEFormat.Object.Text = Texte
End If
End With
End Sub
<stef@nospam> a écrit dans le message de groupe de discussion :
#yVJOudsJHA.1208@TK2MSFTNGP04.phx.gbl...
Bonjour,
J'ai une zone texte dans une feuille que je souhaitais alimenter par vba.
Worksheets("FEUIL1").Shapes("Zone de texte 1").OLEFormat.Object.Text > zonetexte
la variable "zonetexte" pouvant avoir un nombre de caractères variable
mais
fréquemment supérieur à 255 caractères.
Dim Texte As String, LeTexte As String Dim X As Long, A As Long
'En supposant que le texte de départ se trouve 'en cellule A1 With Feuil1 Texte = .Range("A1") 'Vide le contenu de la zone de texte si besoin .Shapes("Toto").OLEFormat.Object.Text = "" 'Détermine le nombre de caractère de notre variable X = Len(Texte) If X > 255 Then 'Boucle pour chaque tranche de 255 caractères For A = 1 To X Step 255 'Scinde la chaîne en 255 carac. à ajouter LeTexte = Mid(Texte, A, 255) 'ajoute la chaîne au contrôle 'Nom de la feuille à adapter .Shapes("toto").TextFrame.Characters(A, 255).Text = LeTexte Next Else .Shapes("Toto").OLEFormat.Object.Text = Texte End If End With End Sub
a écrit dans le message de groupe de discussion : # Bonjour,
J'ai une zone texte dans une feuille que je souhaitais alimenter par vba.
Worksheets("FEUIL1").Shapes("Zone de texte 1").OLEFormat.Object.Text > zonetexte
la variable "zonetexte" pouvant avoir un nombre de caractères variable mais fréquemment supérieur à 255 caractères.