begin process at 2012 02 17 11:33:40
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

General

 > 

Comment insérer une image dans un fichier openoffice writer a partir de VB6 ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment insérer une image dans un fichier openoffice writer a partir de VB6 ?

samedi 14 octobre 2006 à 06:50:33 | Comment insérer une image dans un fichier openoffice writer a partir de VB6 ?

grand_dragon_rouge54

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.
samedi 14 octobre 2006 à 16:48:59 | Re : Comment insérer une image dans un fichier openoffice writer a partir de VB6 ?

michelxld

bonjour à toi ...;o)

tu peux tester cette macro pour insérer une image dans le document


Private Sub Command1_Click()
    Dim serviceManager As Object, oText As Object, oCursor As Object
    Dim Desktop As Object, Document As Object, oImage As Object
    Dim Fichier As String
    Dim args()
    Dim T As Date
   
    '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
   
    'Déplace le curseur a la fin
    oCursor.goToEnd (False)
   
    oCursor.CharWeight = 150 'Gras(100 pour normal)
    oCursor.CharPosture = 2 '(italique)  spécifier 0 pour normal
   
    'insère du texte et un saut de ligne a l'emplacement du curseur
    oText.insertString oCursor, "Les nouvelles informations" & vbLf, False
   
   
    '--- insertion Image ---
    Set oImage = Document.createInstance("com.sun.star.text.GraphicObject")

    With oImage
       .GraphicURL = " [ Lien ] and Settings/mimi/fourmiz.JPG"
       .AnchorType = 1
       .Width = 6000
       .Height = 6000
    End With
   
    oCursor.goToEnd True
    oText.insertTextContent oCursor, oImage, False
    '----------------------
   
   
    'Enregistre les modifications
    Document.Store
    DoEvents
   
    '--------
    'ajoute une temporisation de 2 secondes pour empécher que le fichier
    'ne se ferme avant la fin de la création
    T = Timer + 2: Do Until Timer > T: DoEvents: Loop
    '--------

    'Fermeture du fichier
    'L'argument True indique que les modifications vont être sauvegardées à la fermeture
    Document.Close (True)
   
End Sub


bon week end
michel



Cette discussion est classée dans : fichier, connection, con, ocursor, otext


Répondre à ce message

Sujets en rapport avec ce message

Mettre en forme un fichier openoffice à partir de VB6 [ par grand_dragon_rouge54 ] Bonjour à tous.J'ai programmé une application VB6 qui va récolter des données dans une base access et les renvoie dans un fichier texte de openoffice Mettre en forme un fichier à l'aide de VB6 [ par grand_dragon_rouge54 ] Bonjour à tous. Aujourd'hui gros problème...   J'ai une application en vb6 qui récolte des données dans Connection provider [ par papounez ] bonsoir Debutant VB6actuellement dans mon dataenviroment1...... Connection1.....ConnectionSource....=Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\M VB6 ADO Connection à une BD avec un Textbox [ par JeffC1977 ] Salut...Je ne suis pas capable de me connecter à ma BD.J'ai un textbox dans lequel je rentre le fichier (par exemple 36150). Je dois donc me connecter connection fichiers texte [ par antoine_ferard ] J'ai un problème concernant la connection "multi-utilisateurs" à une table"access" attachée à un fichier texte.Est-il possible de se connecter à plusi Connection matlab VB6 [ par berreqia ] BonjourJ'ai  crée un fichier .dll a partir d'un fichier m-file de matlab. J'arrive pas a le declarer sur VB6merci d'avance :) Recordset inconnu [ par Sandriine ] Bonjout tout le monde, je suis en train d'étudier un tutoriel que j'ai vu sur ce site, propos de la connection à une base de donnée ACCESS en ADO, et Fermeture de connection Base apres requete sql [ par JCDussDuss ] Bonjour,J'ai développé une petite appli en VBA sous Access, qui tape dans une base Access qui se trouve dans un autre fichier mdb. J'ouvre un formulai [vb6] fonction [ par tof008 ] bonjour!Voila mon probleme...Je fais une application sous vb6 en me connectant à une base access... Mais à chaque nouvelle form que je fais, j'appele sos !!!! fichier .ini pour la connection à une base de données distante [ par ibmnoussa ] salut je veux faire un fichier .ini pour y mettre la classe de connection à une base de données(sql server) dans le serveur distant. svp je veux une e


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,154 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales