inkydjango
Messages postés45Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention 3 décembre 2009
-
20 janv. 2009 à 11:40
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 2015
-
20 janv. 2009 à 13:45
bonjour
mon souci est que j'ai recuperer un bout de code sur le site pour exporter un tableau sur excel :
celui ci fonctionne bien en local , fonctionne bien sur mon serveur, mais quand je veux l''executer depuis mon pc alors que la page est sur mon serveur, impossible de le faire fonctionner
la fenetre activer les activex n'apparait plus , jai bien mis mon site, en site securisé mais aucun changement ..
l'erreur est situé a la premiere ligne lors de l'initialisation de la variable qui declare excel...
si vous avez des idees , je suis preneur, je vous insere le code en vrac, je ne sais pas comment joindre un fichier a mon post, desole pour la couleur , mais avec un copier coller dans une pages html ca fonctionne en local
merci
<html>
<script language="javascript">
function exportToExcel(tableau) {
oExcel = new ActiveXObject('Excel.Application');
oWkBooks = oExcel.Workbooks.Add;
oExcelSheet = oWkBooks.Worksheets(1);
oExcelSheet.Activate();
nbrCellules = tableau.cells.length;
for (i = 0; i < tableau.cells.length; i++) {
nbrCellules = nbrCellules + (tableau.cells(i).colSpan * tableau.cells(i).rowSpan) - 1;
}
nbrColonnes = Math.ceil(nbrCellules / tableau.rows.length);
tab = new Array();
for (j = 0; j < nbrCellules; j++) {
tab.push('*');
}
decal = 0;
for (k = 0; k < tableau.cells.length; k++) { if ((tableau.cells(k).colSpan 1) && (tableau.cells(k).rowSpan 1)) {
if (k != (tableau.cells.length - 1)) {
while (tab.slice((k + decal), (k + decal + 1)) == '') {
decal = decal + 1;
}
}
tab.splice((k + decal),1,tableau.cells(k).innerText);
} else if ((tableau.cells(k).colSpan > 1) && (tableau.cells(k).rowSpan == 1)) {
tab.splice((k + decal),1,tableau.cells(k).innerText);
for (l = 0; l < (tableau.cells(k).colSpan - 1); l++) {
tab.splice((k + decal + l + 1),1,'');
}
decal = decal + tableau.cells(k).colSpan - 1;
} else if ((tableau.cells(k).colSpan == 1) && (tableau.cells(k).rowSpan > 1)) {
tab.splice((k + decal),1,tableau.cells(k).innerText);
for (m = 0; m < (tableau.cells(k).rowSpan - 1); m++) {
tab.splice((k + decal + ((m + 1) * nbrColonnes)),1,'');
}
} else if ((tableau.cells(k).colSpan > 1) && (tableau.cells(k).rowSpan > 1)) {
tab.splice((k + decal),1,tableau.cells(k).innerText);
for (n = 0; n < tableau.cells(k).rowSpan ; n++) {
for (o = 0; o < tableau.cells(k).colSpan ; o++) {
if ((n == 0) && (o != 0)) {
tab.splice((k + decal + n + 1),1,'');
decal = decal + 1;
} else if (n != 0) {
tab.splice(k + decal + (nbrColonnes - tableau.cells(k).colSpan) + o + 1 + ((n - 1) * nbrColonnes),1,'');
}
}
}
}
}
for (m = 0; m < tab.length; m++) {
r = Math.ceil((m + 1) / nbrColonnes);
c = (m + 1) - ((r - 1) * nbrColonnes);
oExcel.ActiveSheet.Cells(r,c).Value = tab.slice(m,(m + 1));
}
oExcelSheet.Application.Visible = true;
}
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 20 janv. 2009 à 12:03
bonjour,
je ne comprend pas de quelle page tu parles ?
si c'est le fichier Excel, où fais-tu l'open de ce fichier ?
du style : oExcel .Workbooks.Open("adresse du .xls");
Cordialement [mon Site] [M'écrire] Bul
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 20 janv. 2009 à 12:39
navré... je ne comprend plus rien !!!!!
tu disais n'avoir aucune erreur ni en local, ni sur ton serveur .... ?? non ??
si tu as une erreur à ce niveau, c'est que
les activeX ne sont pas autorisés sur ton serveur
( et chez la plupart des hébergeurs ça ne l'est pas, tu ne pourras rien y faire ! ) ,
ou excel n'est pas installé sur ton serveur, en version multi-utilisateurs
bon... avec intra net c'est sans problème , en internet... je doute
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 20 janv. 2009 à 12:44
bref... à mon avis, et à priori
( peut-être me trompe-je ? )
tu devrais plutôt regarder du coté des langages serveurs
( asp, php, ruby, .net... ), sauf si tu es en intranet
ou si tu as ton propre serveur
inkydjango
Messages postés45Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention 3 décembre 2009 20 janv. 2009 à 13:28
oui c'est en intranet sur mon propore serveur
qu'est ce que ca peut etre a part la securite du site , pour moi c'est peut etre une option de apache qui n'autorise pas les activex...
mais un comportement qui contrarie cette idee est que meme qd jaccede a mon fichier par le reseau [file://\\serveur\site\fichier.html \\serveur\site\fichier.html] (il me prend cette zone comme intranet , ce qui est vrai)
ca ne fonctionne pas non plus , alors c'est pareil je comprends pas grand chose
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 20 janv. 2009 à 13:45
>>c'est en intranet sur mon propore serveur
donc.. ça devrait fonctionner.... aux autorisations près ? sinon....
si tu es en intranet, excel installé sur le serveur, en multi utilisateurs.....
ça doit baigner
au moins au niveau de l'activeX
>>je comprends pas grand chose
si ça peut te rassurer : moi non plus.