utiliser en VBA excel characters sur chaine longue
Le
pirot

Bonjour,
Pour conserver les mises en forme des caractères dans les cellules,
j'utilise la propriété characters (au lieu de mid qui perd les mises en=
formes)
Mon problème: lorsque la cellule contient plus de 255 caractères, cela =
ne fonctionne plus.
Y a-t-il moyen de lever cette restriction????
vous pouvez tester l'exemple suivant:
Sub test()
Range("A1") = "123456789" & String(100, "e")
Range("A1").Characters(4, 1).Font.Underline = True
Range("A1").Characters(4, 1).Delete
Range("a1").Characters(2, 1).Insert "iiiii"
Range("A2") = "123456789" & String(500, "e")
Range("A2").Characters(4, 1).Font.Underline = True
Range("A2").Characters(4, 1).Delete
Range("A2").Characters(2, 1).Insert "iiiii"
End Sub
merci.
Pour conserver les mises en forme des caractères dans les cellules,
j'utilise la propriété characters (au lieu de mid qui perd les mises en=
formes)
Mon problème: lorsque la cellule contient plus de 255 caractères, cela =
ne fonctionne plus.
Y a-t-il moyen de lever cette restriction????
vous pouvez tester l'exemple suivant:
Sub test()
Range("A1") = "123456789" & String(100, "e")
Range("A1").Characters(4, 1).Font.Underline = True
Range("A1").Characters(4, 1).Delete
Range("a1").Characters(2, 1).Insert "iiiii"
Range("A2") = "123456789" & String(500, "e")
Range("A2").Characters(4, 1).Font.Underline = True
Range("A2").Characters(4, 1).Delete
Range("A2").Characters(2, 1).Insert "iiiii"
End Sub
merci.
Il y a ceci :
Range("A2") = "123456789" & String(500, "e")
Range("A2").Characters(4, 1).Font.Underline = True
'4 est le caractère à supprimer dans la cellule A2
Range("A2") = Replace(Range("A2"), 4, "", 1)
'Le deuxième caractère est 2, pour ajouter "iiiii" après le 2 on
'peut écrire quelque chose comme :
Range("A2") = Replace(Range("A2"), 2, "2iiiii", 1)
Et pour remplacer le 1024e caractère ?
--
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La
pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et
personne ne sait pourquoi !" [ Albert Einstein ]
'----------------------------------------------
Sub Test()
Dim T As String, Z As String
T = Range("A2").Text
Z = Left(T, 1999) & "5555" & Right(T, 2001)
Range("A2") = Z
End Sub
'----------------------------------------------