Visites

   visiteurs

   visiteurs en ligne

Sujet n°138 Exportation graphe VBA
    par Ron_74 le 15/04/2008 : 11:25

Bonjour

Je cherche le moyen, depuis un bouton de formulaire, de faire une copie d'écran de mon formulaire et de l'enregistrer en format Jpg.

La touche Imprécran ne fonctionne pas en vba.

j'avais un code qui me permettait de le faire avec Access 97 mais depuis le passage à 2000 access me renvois une erreur lors de la fermeture du formulaire.

Merci de votre aide pour résoudre mon problème.

Message d'erreur:

L'opération sur l'objet graphique a échoué
Il est possible que le serveur OLE ne soit pas inscrit
Pour inscrire le serveur OLE, réinstaller le.


codes

Private Sub Commande7_Click()
Titres = ""
If Me![Titre_2].ControlSource <> "=""""" Then
Titres = left(Mid(Me![Titre_2].ControlSource, 3), Len(Mid(Me![Titre_2].ControlSource, 3)) - 2)
End If
Réponse = UCase(ahtCommonFileOpenSave(Flags:=0, InitialDir:="P:", _
Filter:="JPEG Files (*.jpg)", FilterIndex:=1, DefaultExt:="jpg", FileName:="DA " & _
UCase(nom_fichier(Forms![F_tri]![Titre1].Caption)), _
DialogTitle:="Enregistrer le graph sous", OpenFile:=False))

If Réponse = "" Then Exit Sub
Me![IndépendantOLE0].Object.Export FileName:=Réponse
Open left(Réponse, Len(Réponse) - 4) & ".txt" For Output As #1
Print #1, Me![Titre].Caption
Print #1, Titres
Close #1
MsgBox vbCrLf & "GRAPHE ENREGISTRE SOUS " & Chr(10) & Réponse & Chr(10) & Chr(10) & "TRI ENREGISTRE SOUS " & Chr(10) & left(Réponse, Len(Réponse) - 4) & ".txt", vbInformation + vbOKOnly, "ENREGISTRER :"
End Sub

Type tagOPENFILENAME

[code supprimé]

Réponse n° 1 par 3stone le 15/04/2008 : 19:20
Bonjour,

Ce message d'erreur est typique et indique que Windows ne connait pas (plus) le serveur OLE pour ce type de fichier.

Par exemple, MS-Paint apporte le serveur pour le fichier BMP. Si tu souhaites manipuler les JPG, tu peux par exemple installer ou réinstaller "MS-Photo Editor" ou semblable.

PS: Inutile de coller 1km de code archi-connu wink

Amicalement,
Pierre(3stone)

Réponse n° 2 par Ron_74 le 17/04/2008 : 09:34

Bonjour

J'avais bien compris que windows ne connait plus le serveur OLE.

Je cherche à faire une impression d'écran et d'enregistrer cette copie d'écran depuis un bouton sur un formulaire.

Avez vous une solution?

(Access 2000)

Bonne journée

Réponse n° 3 par 3stone le 17/04/2008 : 14:11
Bonjour,


Dixit...
J'avais bien compris que windows ne connait plus le serveur OLE.


Oui, et j'avais dit qu'il fallait réinstaller un programme comme "MS-Photo Editor" qui apportait un "serveur OLE" du type utilisé pour remettre les choses d'aplomb wink

Tu peux également utiliser SavePictureDataBitmap (en bas de page) de Stephen Leban, ou
Impression d'écran (en bas de page) de Logipro.

Amicalement,
Pierre(3stone)

[ Retour à la liste des sujets ]

Recherche



Préférences

Se reconnecter
---

Votre nom (ou pseudo) :

Votre code secret


 Nombre de membres 1 membre


Connectés :

( personne )

Haut