Bonjour à tous.
J'ai développé une ppalication vb6 qui va collecter des données dans une base de données access et qui les redistribue dans un fihcier openoffice writer. Ca, ça fonctionne bien.
Aujourd'hui, en plus, je souhaiterai récupérer une image présente sur mon disque dur et l'insérer dans le document openoffice writer à partir de mon application VB6.
Quelqu'un saurait il comment faire ? Je pense qu'il me manque selaument un nom de fonction mais je ne suis pas sur. Si quelqu'un à une méthode complété, je suis aussi preneur....
Je vous joints ci-dessous une partie de mon code :
VARIABLES
Dim serviceManager As Object, oText As Object, oCursor As Object
Dim Desktop As Object, Document As Object
Dim Fichier As String
Dim args()
Dim T As Date
CONNECTION A LA BASE DE DONNEES
'Déclaration de la variable de connection
Dim con As New ADODB.Connection
Set con = New ADODB.Connection
'Connection a la base de données
con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MaBase.mdb"
'Declaration de la variable de recorset
Dim res As New ADODB.Recordset
Set res = New ADODB.Recordset
'Ouverture de la connection
con.Open
REQUETE DANS LA BASE
res.Open "select * from MaTable", con, adOpenDynamic, adLockOptimistic
REMPLISAGE DU FICHIER AVEC LES DONNEES DE LA BASE
'Attention à bien spécifier le format URL
Fichier = "
[ Lien ]"
'Création d'une instance Open Office
Set serviceManager = CreateObject("com.sun.star.serviceManager")
Set Desktop = serviceManager.createInstance("com.sun.star.frame.Desktop")
'Ouverture du fichier
Set Document = Desktop.loadComponentFromURL(Fichier, "_blank", 0, args)
Set oText = Document.GetText()
'Création du curseur d'écriture
Set oCursor = oText.createTextCursor
'On boucle le remplissage tant qu'on est pas arrivé à la fin des enregistrements de la requête
Do Until res.EOF
'Définition de la mise en forme du texte par le curseur
oCursor.CharFontName = "arial"
oCursor.CharWeight = 150 'Gras
oCursor.CharHeight = 10 ' Taille des caractères
'A l'emplacement du curseur, inscription du texte contenu dans le champ MonChamp par exemple, le contenu de celui-
ci ayant été récupéré dans la requête
oText.Insertstring oCursor, "Le contenu de mon champ est : " & res!MonChamp, False
'Retour à la ligne
oText.Insertstring oCursor, vbLf, False
'on passe a l enregistrement suivant
res.MoveNext
Loop
Voila en gros mon code... Merci à MICHELXLD pour son aide précieuse.
