J'ai essay=E9 de b=E2tir directement dans VBA Word la m=EAme=20
User Form. De cette fa=E7on plus question d'automation=20
puisque je suis d=E9j=E0 dans Word.
Le code associ=E9 dans VBA est diff=E9rent de VB.
J'ai essay=E9 =E7a au bouton Inserer_Word :
Sub Inserer_Word()
Dim MyDataObject As DataObject
Set MyDataObject =3D New DataObject
=20
Me.rtb1.SelStart =3D 0
Me.rtb1.SelLength =3D Len(rtb1.Text)
MyDataObject.SetText Me.rtb1.SelText
MyDataObject.PutInClipboard
MyDataObject.GetFromClipboard
Selection.Text =3D MyDataObject.GetText
End Sub
Le texte brut est uniquement transf=E9r=E9, je n'arrive pas =E0=20
r=E9cup=E9rer la mise en forme du Rich Text Box ?=20
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
François Picalausa
Hello,
MyDataObject.SetText Me.rtb1.SelText
Cette ligne n'est pas correcte Il faut demander du RTF: Me.rtb1.SelRTF et définir qu'il faut un texte en rtf (comme dans l'exemple que j'avais fait, en deuxième paramètre)
-- François Picalausa (MVP VB) http://faq.vb.free.fr --- http://msdn.microsoft.com http://apisvb.europe.webmatrixhosting.net
"Régis" a écrit dans le message de news:443d01c42ba2$6c615170$
Merci François ça marche parfaitement.
J'ai essayé de bâtir directement dans VBA Word la même User Form. De cette façon plus question d'automation puisque je suis déjà dans Word.
Le code associé dans VBA est différent de VB. J'ai essayé ça au bouton Inserer_Word :
Sub Inserer_Word() Dim MyDataObject As DataObject Set MyDataObject = New DataObject
MyDataObject.GetFromClipboard Selection.Text = MyDataObject.GetText End Sub
Le texte brut est uniquement transféré, je n'arrive pas à récupérer la mise en forme du Rich Text Box ?
Connait-tu une solution ?
Merci.
Régis
Hello,
MyDataObject.SetText Me.rtb1.SelText
Cette ligne n'est pas correcte
Il faut demander du RTF:
Me.rtb1.SelRTF
et définir qu'il faut un texte en rtf (comme dans l'exemple que j'avais
fait, en deuxième paramètre)
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"Régis" <anonymous@discussions.microsoft.com> a écrit dans le message
de news:443d01c42ba2$6c615170$a401280a@phx.gbl
Merci François ça marche parfaitement.
J'ai essayé de bâtir directement dans VBA Word la même
User Form. De cette façon plus question d'automation
puisque je suis déjà dans Word.
Le code associé dans VBA est différent de VB.
J'ai essayé ça au bouton Inserer_Word :
Sub Inserer_Word()
Dim MyDataObject As DataObject
Set MyDataObject = New DataObject
Cette ligne n'est pas correcte Il faut demander du RTF: Me.rtb1.SelRTF et définir qu'il faut un texte en rtf (comme dans l'exemple que j'avais fait, en deuxième paramètre)
-- François Picalausa (MVP VB) http://faq.vb.free.fr --- http://msdn.microsoft.com http://apisvb.europe.webmatrixhosting.net
"Régis" a écrit dans le message de news:443d01c42ba2$6c615170$
Merci François ça marche parfaitement.
J'ai essayé de bâtir directement dans VBA Word la même User Form. De cette façon plus question d'automation puisque je suis déjà dans Word.
Le code associé dans VBA est différent de VB. J'ai essayé ça au bouton Inserer_Word :
Sub Inserer_Word() Dim MyDataObject As DataObject Set MyDataObject = New DataObject