IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[VBA Excel] Ecrire en couleur dans un Word


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2003
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 274
    Par défaut [VBA Excel] Ecrire en couleur dans un Word
    Bonjour à toutes et à tous,

    J'essaye d'écrire des phrases dans un document Word :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    ' Définition du fichier Word
        Dim FichierWord As Object
        Set FichierWord = New Word.Application
        'Set FichierWord = CreateObject("Word.Application")
     
        ' Création du document
        FichierWord.Documents.Add 'DocumentType:=wdNewBlankDocument
     
        ' Ecriture du résultats
        For lngCpt = 1 To Main.lstFichiers.ListCount
     
            tabSplit = Split(lstFichiers.List(lngCpt - 1), vbTab)
     
            If tabSplit(0) <> "" Then
                ' Ecriture dans le document
                FichierWord.Selection.TypeText tabSplit(0) & vbCrLf
                FichierWord.Selection.MoveUp Unit:=wdLine, Count:=3, Extend:=wdExtend
                With Selection.Font
                    .Color = wdColorRed
                End With
            Else
                ' Ecriture dans le document
                FichierWord.Selection.TypeText vbTab & tabSplit(1) & vbCrLf
                FichierWord.Selection.MoveUp Unit:=wdLine, Count:=3, Extend:=wdExtend
                With Selection.Font
                    .Color = wdColorBlue
                End With
            End If
     
            FichierWord.Selection.EndOf Unit:=wdStory, Extend:=wdMove
        Next lngCpt
     
        ' Sauvegarde du document
        FichierWord.ActiveDocument.SaveAs CHEMIN_SCANNER & "\Résultats.doc"
     
        ' Fermeture du document
        FichierWord.ActiveDocument.Close
        FichierWord.Application.Quit
     
        ' On détruit l'objet
        Set FichierWord = Nothing
    Problème : Seul le texte apparaît dans le document et sans être en couleur ;-(

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonsoir

    tu peux tester et adapter cette procédure


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
        Dim AppliWord As Word.Application
        Dim i As Integer
     
        Set AppliWord = New Word.Application
        AppliWord.Visible = True
     
        AppliWord.Documents.Add
     
        For i = 1 To 16
            With AppliWord.Selection
                .Font.ColorIndex = i
                .TypeText Text:="Ligne " & i & vbCrLf
            End With
        Next i


    bonne soirée
    michel

  3. #3
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2003
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 274
    Par défaut
    Bonjour SkillyRoad,

    Après avoir adapté un peu, j'ai fini par trouver ce qu'il fallait faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
        ' Définition du fichier Word
        Dim FichierWord As Object
        Set FichierWord = New Word.Application
        'Set FichierWord = CreateObject("Word.Application")
     
        ' Création du document
        FichierWord.Documents.Add 'DocumentType:=wdNewBlankDocument
     
        ' Ecriture du résultats
        For lngCpt = 1 To Main.lstFichiers.ListCount
     
            tabSplit = Split(lstFichiers.List(lngCpt - 1), vbTab)
     
            If tabSplit(0) <> "" Then
                ' Ecriture dans le document
                With FichierWord.Selection
                    .Font.Color = wdColorBlue
                    .TypeText tabSplit(0) & vbCrLf
                End With
            Else
                ' Ecriture dans le document
                With FichierWord.Selection
                    .Font.Color = wdColorRed
                    .TypeText vbTab & tabSplit(1) & vbCrLf
                End With
            End If
     
            FichierWord.Selection.EndOf Unit:=wdStory, Extend:=wdMove
        Next lngCpt

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA][Excel]Copier une feuille dans un nouveau classeur
    Par illight dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 02/10/2020, 12h51
  2. [VBA EXCEL] changer la couleur du texte de cellules
    Par dume75 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/02/2006, 23h08
  3. [VBA] Excel- Save un document dans 2 répertoires différents
    Par altarez dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/01/2006, 22h32
  4. [VBA excel]Inserer un graphique dans un formulaire
    Par girardeau dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/11/2005, 15h58
  5. [VBA Excel] ecrire le caractere " avec une macro
    Par oktopuces dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/09/2005, 22h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo