OVH Cloud OVH Cloud

Impression vers excel

9 réponses
Avatar
Cyrille
Bonjour à tous

j'ai ce code qui permet d'imprimer depuis access des fichiers excel mais il
faudrait que ca marche quelque soit la version d'excel (j'avais rajouté dans
le vba la reference excel11 de mon poste). comment faire pour que ca marche
sur n'importe quel ordinateur et avec des versions differentes d'excel ainsi
que la base va travailler en runtime access.

Dim XL_App As New Excel.Application
Dim XL_Classeur As Object
Dim XL_Feuille As Object
With XL_App
Set XL_Classeur = .Workbooks.Open("c:\xxxx\Stats.xls")
Set XL_Feuille = XL_Classeur.Sheets("CA Clients")
With XL_Feuille
.Select
.PrintOut Copies:=1, Collate:=True
End With
.ActiveWorkbook.Save
.ActiveWorkbook.Close
.Quit
End With
Set XL_App = Nothing
Set XL_Classeur = Nothing
Set XL_Feuille = Nothing


Merci d'avance.

9 réponses

Avatar
Raymond [mvp]
Bonjour.

si tu coches la référence excel, tu n'auras aucun problème sur les
différentes versions de Office. Il faut veiller que le excel soit de même
version que access. Là où tu peux trouver des problèmes c'est si sur un
poste tu as plusieurs versions Office installées.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
Bonjour à tous

j'ai ce code qui permet d'imprimer depuis access des fichiers excel mais
il
faudrait que ca marche quelque soit la version d'excel (j'avais rajouté
dans
le vba la reference excel11 de mon poste). comment faire pour que ca
marche
sur n'importe quel ordinateur et avec des versions differentes d'excel
ainsi
que la base va travailler en runtime access.

Dim XL_App As New Excel.Application
Dim XL_Classeur As Object
Dim XL_Feuille As Object
With XL_App
Set XL_Classeur = .Workbooks.Open("c:xxxxStats.xls")
Set XL_Feuille = XL_Classeur.Sheets("CA Clients")
With XL_Feuille
.Select
.PrintOut Copies:=1, Collate:=True
End With
.ActiveWorkbook.Save
.ActiveWorkbook.Close
.Quit
End With
Set XL_App = Nothing
Set XL_Classeur = Nothing
Set XL_Feuille = Nothing


Merci d'avance.


Avatar
Cyrille
justement excel ne sera pas de la meme version qu'access.
Runtime 2003 avec excel 97


Bonjour.

si tu coches la référence excel, tu n'auras aucun problème sur les
différentes versions de Office. Il faut veiller que le excel soit de même
version que access. Là où tu peux trouver des problèmes c'est si sur un
poste tu as plusieurs versions Office installées.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
Bonjour à tous

j'ai ce code qui permet d'imprimer depuis access des fichiers excel mais
il
faudrait que ca marche quelque soit la version d'excel (j'avais rajouté
dans
le vba la reference excel11 de mon poste). comment faire pour que ca
marche
sur n'importe quel ordinateur et avec des versions differentes d'excel
ainsi
que la base va travailler en runtime access.

Dim XL_App As New Excel.Application
Dim XL_Classeur As Object
Dim XL_Feuille As Object
With XL_App
Set XL_Classeur = .Workbooks.Open("c:xxxxStats.xls")
Set XL_Feuille = XL_Classeur.Sheets("CA Clients")
With XL_Feuille
.Select
.PrintOut Copies:=1, Collate:=True
End With
.ActiveWorkbook.Save
.ActiveWorkbook.Close
.Quit
End With
Set XL_App = Nothing
Set XL_Classeur = Nothing
Set XL_Feuille = Nothing


Merci d'avance.







Avatar
Raymond [mvp]
Il faut tester sur du réel, car il faut voir aussi la version windows. le
runtime 2003 ne peut fonctionner que sur une version win 2000 minimum. s'il
n'y a qu'un seul access (runtime 2003) installé et un seul excel (97)
installé et que les commandes excel que tu envoies sont bien compatibles
avec excel 97, ça doit fonctionner.
mais teste bien sur un poste de cette configuration avant de livrer ton
client.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
justement excel ne sera pas de la meme version qu'access.
Runtime 2003 avec excel 97



Avatar
Cyrille
justement c'est dans cette config, windows 2000-runtime 2003-excel 97 que ca
va fonctionner et pourtant message d'erreur, je pense qu'il faudrait essayer
d'integrer la reference d'excel 97 dans le vba (si c'est le cas comment
faire?)


Il faut tester sur du réel, car il faut voir aussi la version windows. le
runtime 2003 ne peut fonctionner que sur une version win 2000 minimum. s'il
n'y a qu'un seul access (runtime 2003) installé et un seul excel (97)
installé et que les commandes excel que tu envoies sont bien compatibles
avec excel 97, ça doit fonctionner.
mais teste bien sur un poste de cette configuration avant de livrer ton
client.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
justement excel ne sera pas de la meme version qu'access.
Runtime 2003 avec excel 97









Avatar
Raymond [mvp]
si excel 97 est tout seul, il doit le trouver. en es-tu sûr ?
si tu as fait un empaquetage, l'assistant a mis excel 11 dans le package et
maintenant tu as peut-être les deux en ligne, donc le runtime veut le 11
mais comme tu n'as pas excel 11 ==> erreur.
si tu as la librairie 11 supprime-la , reboot la pc et relance access.


--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
justement c'est dans cette config, windows 2000-runtime 2003-excel 97 que
ca
va fonctionner et pourtant message d'erreur, je pense qu'il faudrait
essayer
d'integrer la reference d'excel 97 dans le vba (si c'est le cas comment
faire?)



Avatar
Cyrille
je n'ai pas fait d'empaquetage, j'ai installé le runtime et mis le fichier
mdb en reseau
quand je regarde le chemin de la ref excel,
c'est c:program filesMicrosoft OfficeOffice11Excel.exe


si excel 97 est tout seul, il doit le trouver. en es-tu sûr ?
si tu as fait un empaquetage, l'assistant a mis excel 11 dans le package et
maintenant tu as peut-être les deux en ligne, donc le runtime veut le 11
mais comme tu n'as pas excel 11 ==> erreur.
si tu as la librairie 11 supprime-la , reboot la pc et relance access.


--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
justement c'est dans cette config, windows 2000-runtime 2003-excel 97 que
ca
va fonctionner et pourtant message d'erreur, je pense qu'il faudrait
essayer
d'integrer la reference d'excel 97 dans le vba (si c'est le cas comment
faire?)









Avatar
Raymond [mvp]
ce que tu pourrais faire c'est tricher un peu. tu copies le excel version 97
en excel.exe dans le répertoire office11.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
je n'ai pas fait d'empaquetage, j'ai installé le runtime et mis le fichier
mdb en reseau
quand je regarde le chemin de la ref excel,
c'est c:program filesMicrosoft OfficeOffice11Excel.exe



Avatar
Cyrille
j'y avais pensé mais ca plante le runtime, j'ai aussi pensé a créer un
dossier office dans program filesMicrosoft office pour y mettre le fichier
excel.exe et apres intégrer la bibliotheque mais ca marche pas non plus.


ce que tu pourrais faire c'est tricher un peu. tu copies le excel version 97
en excel.exe dans le répertoire office11.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
je n'ai pas fait d'empaquetage, j'ai installé le runtime et mis le fichier
mdb en reseau
quand je regarde le chemin de la ref excel,
c'est c:program filesMicrosoft OfficeOffice11Excel.exe









Avatar
Raymond [mvp]
il faut modifier la référence sur la mdb et cocher la référence 97 et
vérifier si ça fonctionne sous runtime. si ça fonctionne, redistribuer. je
ne suis pas étonné que la version 2003 ne puisse pas s'allier avec la
version 97 excel surtout en version runtime.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Cyrille" a écrit dans le message de
news:
j'y avais pensé mais ca plante le runtime, j'ai aussi pensé a créer un
dossier office dans program filesMicrosoft office pour y mettre le
fichier
excel.exe et apres intégrer la bibliotheque mais ca marche pas non plus.