Automation excel depuis Javascript [Résolu]

Signaler
Messages postés
3
Date d'inscription
vendredi 20 janvier 2006
Statut
Membre
Dernière intervention
11 mars 2012
-
Messages postés
3
Date d'inscription
vendredi 20 janvier 2006
Statut
Membre
Dernière intervention
11 mars 2012
-
Bonjour à tous,

Je cherche à réaliser une automation excel depuis Javascript.
En gros ouvrir excel depuis une page web et passer une transaction sql par odbc).
La macro marche sans problème sous vba :
...
Worksheets(1).QueryTables.Add("ODBC;DBQ=C:...mdb;Driver={Driver do Microsoft Access (*.mdb)}", Range("A1")).CommandText = "SELECT * FROM DAT_FIC"
Worksheets(1).QueryTables.Add("ODBC;DBQ=C:...mdb.mdb;Driver={Driver do Microsoft Access (*.mdb)}", Worksheets(1).Range("A1"), "SELECT * FROM DAT_FIC").Refresh


Toutefois je bloque pour traduire cette macro sous javascript.
voici un début de code :

var xlApp = new ActiveXObject("Excel.Application");
xlApp.Visible = true;
xlApp.DisplayAlerts = false;
var xlBook = xlApp.Workbooks.Add();
xlBook.worksheets(1).activate;
var xlSheet = xlBook.activeSheet;
xlSheet.Range("A1").CurrentRegion.ClearContents;

xlSheet.QueryTables.Add("ODBC;DBQ=C:...mdb;Driver={Driver do Microsoft Access (*.mdb)}", xlSheet.Range("A1")).CommandText = "SELECT * FROM DAT_FIC"

xlSheet.QueryTables.Add("ODBC;DBQ=C:...mdb;Driver={Driver do Microsoft Access (*.mdb)}", xlSheet.Range("A1"), "SELECT * FROM DAT_FIC").Refresh



Par avance un grand merci à tous et pardon pour les erreurs car c'est mon 1er message.

3 réponses

Messages postés
3
Date d'inscription
vendredi 20 janvier 2006
Statut
Membre
Dernière intervention
11 mars 2012

Hello jephambl,

Désolé pour la réponse tardive.

Il appliquer l'exemple fonctionne il faut ajouter "()" après refresh :

.Refresh()

J'espère avoir pu t'aider.

Ps: Peut être connais-tu CollectGarbage() mais si ce n'est pas le cas place cette ligne pour terminer ta fonction Javascript.
Messages postés
3
Date d'inscription
vendredi 20 janvier 2006
Statut
Membre
Dernière intervention
11 mars 2012

Après de nombreux tests j'ai trouvé la réponse. Merci à ceux qui ont lu le post.
Messages postés
1
Date d'inscription
dimanche 15 novembre 2009
Statut
Membre
Dernière intervention
16 janvier 2012

j'aimerai bien savoir comment tu as fait, car je me pose la meme question. Merci si tu peux la poster