Macro OpenOffice - publipostage

Macro OpenOffice - publipostage - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 04-09-2010 à 22:40:37    

Bonjour à tous !
 
je me casse la tête depuis ce matin sur ce problème :
Je souhaite faire dans swriter un publipostage par le biais d'une macro (--> que la fusion se fasse à l'ouverture du fichier ou en lançant la macro, peu importe  :) ). Ce publipostage se fait avec un fichier txt.
Mon fichier s'appelle test.odt (contenant 2 champs de fusion "nom" et "prenom" ) et le fichier qui contient les informations à récupérer (faisant office de bdd) est le fichier test.txt (infos séparées par des points-virgules).
Après avoir parcouru Google et tenté pas mal de codes, j'arrive à ça :
 
Sub Fusion
   Dim oMailMerge As Object
   oDoc = ThisComponent
   oDocSettings = oDoc.createInstance("com.sun.star.text.DocumentSettings" )  
   oMailMerge = CreateUnoService("com.sun.star.text.MailMerge" )
   oMailMerge.DocumentURL =  "file:///c:/users/titi/desktop/test.odt"
   oMailMerge.DataSourceName =  "file:///c:/users/titi/desktop/test.txt"
   'oMailMerge.CommandType = 0
   oMailMerge.Command =  "file:///c:/users/titi/desktop/test.txt"
   'oMailMerge.OutputType = 2
   oMailMerge.execute(Array())
   oConnection.dispose()
   oDoc.close(true)
End Sub
 
Mais j'ai un message d'erreur à la ligne "oMailMerge.execute(Array())" en me disant "Une exception s'est produite Type com.sun.star.sdbc.SQLException" Impossible d'établir une connexion à la source de données externe : le pilote SDBC n'a pas pu être détecté pour l'URL spécifié..
 
J'ai vérifié dans Outils--> Options --> Java (pour la jre); cela semble bon.
 
En fait, cela me pose 2 questions :
1/ je souhaite faire la fusion avec un fichier txt, est-ce normal qu'il me parle de SQL ?
2/ je souhaite juste faire une macro OOO qui me fasse la fusion avec ce fichier txt, peut-être avez-vous un bout de code qui fasse cela qui traine quelque part  :D  
 
Pouvez-vous m'apporter votre aide ?
 
Merci  :hello:

Reply

Marsh Posté le 04-09-2010 à 22:40:37   

Reply

Marsh Posté le 05-09-2010 à 11:29:05    

Heu...désolé, je viens de m'apercevoir que je me suis trompé de catégorie :-)
Je remets ce message alleuirs; je ne sais pas si je peux le supprimer d'ici ?
Merci.

Reply

Marsh Posté le 05-09-2010 à 11:43:49    

si tu édites le premier post, il y a une case supprimer.


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed