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 :

VB.net - Modifier l'en tête d'un document Word [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien
    Inscrit en
    Octobre 2020
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Octobre 2020
    Messages : 15
    Par défaut VB.net - Modifier l'en tête d'un document Word
    Bonjour,

    Je souhaite remplacer une chaine de caractère dans l'en tête d'un document Word à partir de l'application développé sous Visual Studio 2019 en VB.net.
    J'ai trouvé et rédigé 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
     Dim Chemin_BDD As FileInfo = My.Computer.FileSystem.GetFileInfo(Fichier_BDD)
     Dim Chemin_Word As String = Chemin_BDD.DirectoryName & "\" & TB_Numéro_Rapport.Text & " " & TB_Version_Rapport.Text & ".docx"
     
    File.WriteAllBytes(Chemin_Word, My.Resources.Trame) 'création du word
     
    Dim oW As Object           ' Déclaration de la variable oW
    oW = CreateObject("Word.Application")            ' Initialisation de la variable
    oW.Visible = False          ' Accepter que Word apparaisse
    oW.Documents.Open(Chemin_Word, ReadOnly:=False)            ' Ouverture du fichier
     
    'Page 1
    oW.Application.ActiveDocument.Content.Find.Execute(FindText:="<Numero_Protocole>", ReplaceWith:=TB_Numéro_Rapport.Text) 'Ca fonctionne
     
     'En tete
     oW.Application.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
     oW.Application.ActiveDocument.Content.Find.Execute(FindText:="<Numero_Protocole>", ReplaceWith:=TB_Numéro_Rapport.Text)
     oW.Application.ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
     
    oW.ActiveDocument.Save() ' Sauvegarde du document
    oW.Quit() ' Ferme Word
    J'ai les erreurs suivantes :
    Erreur BC30451 'wdSeekCurrentPageHeader' n'est pas déclaré. Il peut être inaccessible en raison de son niveau de protection.
    Erreur BC30451 'wdSeekMainDocument' n'est pas déclaré. Il peut être inaccessible en raison de son niveau de protection.
    J'ai trouvé des codes pour remplacer les textes qui sont :
    wdSeekCurrentPageHeader --> 4,9 -->
    Erreur BC30205 Fin d'instruction attendue.
    j'ai essayé avec 4.9 -->
    System.Runtime.InteropServices.COMException : 'L'affichage demandé n'est pas disponible.'
    wdSeekMainDocument --> 0 / Cela fonctionne avec cet entier

    Avez-vous une solution à me proposer pour corriger mes erreurs ou une solution totalement différente afin de me permettre de modifier l'en tête ?

    Merci d'avance.

  2. #2
    Membre averti
    Homme Profil pro
    Technicien
    Inscrit en
    Octobre 2020
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Octobre 2020
    Messages : 15
    Par défaut Résolu
    Bonjour,

    J'ai finalement trouvé une solution en passant par les signets :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      oW.Application.ActiveDocument.Bookmarks("Numero_Protocole").Range.Find.Execute(FindText:="<Numero_Protocole>", ReplaceWith:=TB_Numéro_Rapport.Text)
    Cordialement.

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

Discussions similaires

  1. [VB.NET] Modifier le background d'un TabControl
    Par exclusif dans le forum Windows Forms
    Réponses: 33
    Dernier message: 02/07/2007, 14h37
  2. [.NET CF] Modifier les en-têtes d'une DataGrid
    Par Marc_P dans le forum Windows Mobile
    Réponses: 2
    Dernier message: 24/10/2006, 15h02
  3. [VB .NET] Questions sur la generation d un document Word
    Par qaiden dans le forum Windows Forms
    Réponses: 1
    Dernier message: 30/07/2006, 10h01
  4. [VB.Net] Modifier le symbol monétaire par défaut ?
    Par cedric_g dans le forum VB.NET
    Réponses: 3
    Dernier message: 16/11/2005, 08h44
  5. [.NET]Modifier les variables d'environnement dans...
    Par GusS dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 09/02/2005, 16h25

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