Instruction dans VBA

[Résolu]
Signaler
Messages postés
7
Date d'inscription
mercredi 30 juillet 2008
Statut
Membre
Dernière intervention
11 octobre 2008
-
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
-
Bonjour,

Je souhaite créer un fichier contenant des données numériques et textes contenues dans des feuilles Excel. Pour cela j'utilise l'instruction print de la façon suivante :

Nuro = Sheets(F1).Cells(I + I0, 1).Value
Print #1, "Risque N° : "; Nuro
Print #1, ' saut de ligne
Lib = Sheets(F1).Cells(I + I0, 3).Value
Print #1, "Libellé : "; Lib
Print #1,

J'obtiens alors un fichier Word dont le filename est défini par #1 et contenant le texte voulu mais dans un format qui ne me convient pas (la police est Courier New et la taille 10).
Question : comment définir le format souhaité (par exemple Arial, taille 11, gras, italique, etc.) dans les instructions VBA ci-dessus.

$$$$Harlem971$$$$

5 réponses

Messages postés
577
Date d'inscription
vendredi 26 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2010
4
Bonjour

Kristof_koder n'a pas tout à fait raison. Avec des instructions print, tu peux créer un fichier word, mais uniquement au format rtf (rich text format), comme dans l'exemple suivant.

Cordialement

Sub creeFichierRtf()
    Dim enteteRtf As String
    enteteRtf = "{\rtf1\ansi\ansicpg1252\deff0\deflang1036"
    enteteRtf = enteteRtf & "{\fonttbl{\f0\fswiss\fcharset0 Arial;}"
    enteteRtf = enteteRtf & "{\f1\froman\fprq2\fcharset0 Times New Roman;}"
    enteteRtf = enteteRtf & "}\pard"
    Open "test.rtf" For Output As #1
    Print #1, enteteRtf
    Print #1, "{\f1\fs20\b Bonjour}" ' "bonjour" en Times New Roman, 10 cpi, gras
    Print #1, "\par"                 ' retour à la ligne
    Print #1, "{\f0\fs24 Bonsoir}" ' "bonsoir" en Arial, 12 cpi
    Print #1, "}"
    Close #1
End Sub
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Bonjours,

pas vraiment très clair...
Je te suggère d'écrire dans une richtextbox et de sauvegarder dans un fichier word.
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
Avec des Print #n, tu ne crées pas un fichier Word, mais un simple fichier texte !!
Messages postés
7
Date d'inscription
mercredi 30 juillet 2008
Statut
Membre
Dernière intervention
11 octobre 2008

Bonjour,

moi je n'y connais rien,je suis tombé sur un utilisateur a mon travail qui souhaite effectuer cette manipulation.
une richtextbox qu'est ce que c'est?
Ma question est de savoir si il y a une intruction qui permet de choisir  (par exemple Arial,
taille 11, gras, italique, etc.) dans les instructions VBA ci-dessus.

PS : si l'instruction n'est pas correct merci d'effectuer des modifications.

$$$$Harlem971$$$$
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
orohena < Un fichier au format rtf n'a jamais été un fichier Word !
Soyons précis !! Un fichier RTF est plus proche d'un fichier texte que d'un fichier Word ! Lapreuve en est que tu crées un fichier RTF comme on crées un fichier texte ... avec des Print #1 !!