ffak
Messages postés5Date d'inscriptionmercredi 11 septembre 2002StatutMembreDernière intervention13 septembre 2002
-
12 sept. 2002 à 09:37
cs_imer
Messages postés59Date d'inscriptionvendredi 26 juillet 2002StatutMembreDernière intervention29 janvier 2004
-
12 sept. 2002 à 12:36
Bonjour,
je souhaite, sous VB/access, lorsque j'appuie sur mon bouton, sélectionner la cellule "total" de mon tableau excel, ceci afin d'ajouter une ligne pour ajouter un enregistrement(et décaller donc "total" une ligne plus bas)
Comment faire pour demander la sélection de la ligne où se trouve le focus?
Merci beaucoup.
cs_imer
Messages postés59Date d'inscriptionvendredi 26 juillet 2002StatutMembreDernière intervention29 janvier 2004 12 sept. 2002 à 11:18
'Soit XlApp, l'appli Excel
'Soit NomClasseur, le nom du classeur excel
'Soit NomFeuille, le nom de la feuille excel
'Soit LigneTotal, la ligne du total
'Pour insérer une ligne au dessus de la ligne contenant la cellule Total
XlApp.WorkBooks(NomClasseur).WorkSheets(NomFeuille).Rows(LigneTotal).Insert
'Pour insérer une ligne au dessus de la cellule active (qui possède le focus)
XlApp.ActiveCell.EntireRow.Insert
cs_imer
Messages postés59Date d'inscriptionvendredi 26 juillet 2002StatutMembreDernière intervention29 janvier 2004 12 sept. 2002 à 11:28
'Qu'entends tu par Excel plante ?
'Pour mieux controler excel, déclare l'application
'Dans le menu du module, cocher Outils/Références.../Microsoft Excel X.X Object Library
'Déclarer l'appli excel
Dim XlApp As Excel.Application
'Instancier l'appli excel
Set XlApp = New Excel.Application
'Ouvrir le classeur
XlApp.WorkBooks.Open "C:\xxx\abc.xls"
ffak
Messages postés5Date d'inscriptionmercredi 11 septembre 2002StatutMembreDernière intervention13 septembre 2002 12 sept. 2002 à 11:54
Merci de l'aide.
Quand je dis que excel plante, c'est faux :-)
Le code fonctionne une fois, excel s'ouvre et modifie la feuille en ajoutant une ligne au dessus de la cellule total.
A la seconde utilisation, le classeur est verrouillé (?) et aucun modif n'est possible.
Au secours! :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_imer
Messages postés59Date d'inscriptionvendredi 26 juillet 2002StatutMembreDernière intervention29 janvier 2004 12 sept. 2002 à 12:36
Si le classeur est verrouillé c'est qu'il est peut être déjà ouvert et que tu l'a ouvert une deuxieme fois (en lecture seule) sur une autre instance excel.
Pour éviter de gérer plusieurs applications excel, "remonte" la variable xlapp au niveau du module
'Créer une seule fois l'appli excel
If XlApp is Nothing Then
Set XlApp = New Excel.Application
XlApp.Visible = True
End If
XlApp.WorkBooks.Open "C:\xxx\abc.xls"
Ou bien ferme le classeur et l'application excel après utilisation
Ou bien regarde si le classeur est en lecture seule et notifie le
If XlApp.WorkBooks("abc.xls").ReadOnly = True Then MsgBox "Fermer le classeur" (pas terrible)
cs_imer
Messages postés59Date d'inscriptionvendredi 26 juillet 2002StatutMembreDernière intervention29 janvier 2004 12 sept. 2002 à 12:36
Si le classeur est verrouillé c'est qu'il est peut être déjà ouvert et que tu l'a ouvert une deuxieme fois (en lecture seule) sur une autre instance excel.
Pour éviter de gérer plusieurs applications excel, "remonte" la variable xlapp au niveau du module
'Créer une seule fois l'appli excel
If XlApp is Nothing Then
Set XlApp = New Excel.Application
XlApp.Visible = True
End If
XlApp.WorkBooks.Open "C:\xxx\abc.xls"
Ou bien ferme le classeur et l'application excel après utilisation
Ou bien regarde si le classeur est en lecture seule et notifie le
If XlApp.WorkBooks("abc.xls").ReadOnly = True Then MsgBox "Fermer le classeur" (pas terrible)