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

VB.NET Discussion :

Ecrire dans un document Word


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 80

    Informations forums :
    Inscription : Janvier 2007
    Messages : 201
    Par défaut Ecrire dans un document Word
    Bonjour à toutes et à tous
    Un grand merci à celles et à ceux qui pourront m'aider, ce sujet semble trivial, mais je rame, je rame !
    J'essaie de répondre à Lou87 : Copier une Listbox dans un document Word à partir d'une appli VB.NET
    J'ai cherché partout (surement mal) et je ne trouve pas d'exemple. j'en trouve bien un en C#, mais je ne sais pas le traduire en VB, et je ne peux pas télécharger le PDF qui donnerais la solution !!! Bad luck.
    Le code suivant :
    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
      Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
            Dim zone As String = ""
            Dim z As String = ""
            Dim i As Integer
            Dim signet As String = "Le_i"
            For i = 0 To ListBox1.Items.Count - 1
                zone &= ListBox1.Items(i) & vbCrLf
            Next
            Dim wap As Word.Application
            wap = CType(CreateObject("word.application"), Word.Application)
            wap.Application.Visible = True
            wap.Application.Documents.Open(FileName:="C:\aide.doc", ReadOnly:=False)
            Dim mydoc As Word.Document
            mydoc = wap.ActiveDocument
            Clipboard.SetDataObject(zone)    ' Le contenu de la listbox dans le presse papier
            If mydoc.Bookmarks.Exists(signet) Then
                mydoc.Bookmarks(signet).Select()
                MsgBox("Trouve le " & signet & " !!!")
             End If
    End Sub
    Provoque l'erreur suivante quand je tente de coller dans le document Word, ce que j'ai mis dans le presse papier :
    Structure FORMATETC non valide (Exception from HRESULT: 0x80040064 (DV_E_FORMATETC))
    Première question : Comment corriger?
    Deuxieme question : Comment piloter le collage à partir de mon appli VB ?
    Troisième question : Comment ecrire directement dans le document word, sans passer par un copier coller ?
    Quatrième ( et dernière question) : Comment activer une macro VBA du susdit document Word.
    Encore merci pour votre aide

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 80

    Informations forums :
    Inscription : Janvier 2007
    Messages : 201
    Par défaut Euréka disait-il
    Bonjour,
    Non sans mal, avec détermination et opiniatreté, j'ai trouvé en allant visiter les sites proposés par Gooooooooooogle en réponse à "pilotage word VB.net"
    Pour écrire dans word, c'est élémentaire my dear Watson :

    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
    42
    43
    44
    45
    46
    47
    48
    49
    Imports System.Diagnostics
    Imports System.Threading
    Imports Microsoft.Office.Interop
    Public Class Form1
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            ListBox1.Items.Clear()
            ListBox1.Items.Add("Sea Bird")
            ListBox1.Items.Add("Reliance")
            ListBox1.Items.Add("Diatome")
            ListBox1.Items.Add("Topyo")
            ListBox1.Items.Add("Vaguely Noble")
            ListBox1.Items.Add("Allez France")
            ListBox1.Items.Add("Levmoss")
            ListBox1.Items.Add("Gyr")
            ListBox1.Items.Add("Prince régent")
            ListBox1.Items.Add("Park Top")
            ListBox1.Items.Add("Nijinsky")
     
        End Sub
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
            Dim zone As String = ""
            Dim z As String = ""
            Dim i As Integer
            Dim signet As String = "Avant"
            For i = 0 To ListBox1.Items.Count - 1
                zone &= ListBox1.Items(i) & vbCrLf
            Next
            Dim wap As Word.Application
            wap = CType(CreateObject("word.application"), Word.Application)
            wap.Application.Visible = True
            wap.Application.Documents.Open(FileName:="C:\aide.doc", ReadOnly:=False)
            Dim mydoc As Word.Document
            mydoc = wap.ActiveDocument
            Clipboard.SetDataObject(zone)    ' Le contenu de la listbox dans le presse papier
            If mydoc.Bookmarks.Exists(signet) Then
                mydoc.Bookmarks(signet).Select()
                MsgBox("Trouve le " & signet & " !!!")
             End If
            With wap.Selection
                .TypeText(zone)
            End With
     
     
     
        End Sub
    End Class
    Une bonne adresse :
    http://www.infini-.com/Sciences/Info...ord/index.html
    Une autre, qui décline sur tout le sujet :
    http://msdn2.microsoft.com/fr-fr/lib...cs(VS.80).aspx

    Les adresses ont été trouvée par Gooooooooogle en cherchant ".typetext".
    Pour paraphraser Coluche, pour apprendre VB.NET il faut connaître VB.NET

  3. #3
    Membre éclairé

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 291
    Par défaut
    Une petite balise fera l'affaire

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 80

    Informations forums :
    Inscription : Janvier 2007
    Messages : 201
    Par défaut
    Une petite balise fera l'affaire
    En effet, autant pour moi !

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

Discussions similaires

  1. Ecrire dans un document Word avec une macro Word
    Par deruyter dans le forum VBA Word
    Réponses: 2
    Dernier message: 14/01/2010, 00h24
  2. Réponses: 1
    Dernier message: 24/08/2006, 18h21
  3. [VB-W]Occurence d'un style dans un document Word
    Par cocotte06 dans le forum VBA Word
    Réponses: 1
    Dernier message: 23/06/2006, 07h06
  4. Réponses: 3
    Dernier message: 06/02/2006, 17h04
  5. Réponses: 5
    Dernier message: 27/09/2005, 09h18

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