Bonjour François,

 

Oui ! tu as d'une certaine façon raison .. Ma macro je l'ai mais tu vois je
me sers de deux fichiers xml différents et je donne le nom directement, ce
qui m'oblige à mettre toujours les même noms à mes fichiers, je dois dire
que je ne trouve pas ça pratique. J'aimerais pouvoir ouvrir la boîte de l
exploreur pour savoir choisir le fichier xml que je désire dans ce style :

 

option explicit

Sub ChoisirFichier

  Dim monDocument As Object

  Dim FP As Object

  Dim mesFichiers() As String

  Dim maFeuille As Object

  Dim RepertoireDoc As String

  Dim NomFichier As String

  Dim CheminNomFichier As String

  monDocument = thisComponent

  FP = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")

 

  With FP

    '.initialize(FPtype())

    .DisplayDirectory = ConvertToURL(RepertoireDoc)

    .DefaultName = NomFichier

    '.appEndFilter("Textes", "*.txt")

    .appEndFilter("Docs OpenOffice", "*.odt;*.ott;*.sxd,*.sxi")

    .appEndFilter("Docs MS-Office", "*.doc;*.xls;*.ppt")

    .CurrentFilter = "Docs OpenOffice"

    .Title = "Choisir un fichier cible"   

    if .Execute = _

        com.sun.star.ui.dialogs.ExecutableDialogResults.OK then

      mesFichiers() = .Files ' tableau de 1 élément String

      CheminNomFichier = mesFichiers(0)

    msgBox(ConvertFromURL(CheminNomFichier),,"Sélection fichier")

 

    Else

      Exit Sub   

    End if

    .dispose

  End With

 

end sub

 

 

Mais je ne sais pas comment l'adapter à ma macro personnelle ?

 

 

Option Explicit

 

Sub Supprimer_Balises_Content

 Dim f1 As Integer, f2 as integer

 Dim uneLigne As String

 dim identite as string, resultat as string

 

 

identite = "C:\Formulaire\CarteIdentite\carte.xml"

f1 = FreeFile ' obtenir un numéro de fichier ouvert

Open identite For input As #f1

 

resultat = "C:\Formulaire\CarteIdentite\resultat.xml"

f2 = FreeFile ' obtenir un numéro de fichier ouvert

Open resultat For output As #f2

 

'*** rajouter les 5 premières lignes du fichier carte.xml dans resultat.xml

  Line Input  #f1, uneLigne '1

  Print #f2, uneLigne

   Line Input  #f1, uneLigne'2

  Print #f2, uneLigne

   Line Input  #f1, uneLigne'3

  Print #f2, uneLigne

   Line Input  #f1, uneLigne'4

  Print #f2, uneLigne

   Line Input  #f1, uneLigne'5

  Print #f2,  uneLigne

 

'***Ecrire directement les deux dernières balises dans le fichier resultat
xml  

  Print #f2, "</CardHolder>" 

     Print #f2, "</Card>"

       

MsgBox "Le fichier carte.xml est maintenant modifié, vous pouvez réaliser la
fusion."  

Close #f1

close #f2

end sub

 

Françoise

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à