Exportation des tableaus vers excel

Soyez le premier à donner votre avis sur cette source.

Snippet vu 17 797 fois - Téléchargée 19 fois

Contenu du snippet

cet code vous permeterent d'éxportation des table en html vers Excel.

Source / Exemple :


<!--
/*---------------------------------------------------------
Nom de la fonction : exportToXL
Description : Rempli une feuille Excel avec le contenu
d'un tableau
Entrées :
eSrc -> tableau à exporter
Sorties :
En cas d'erreur renvoie false
---------------------------------------------------------*/
function exportToXL(eSrc,diff) {

	var oExcel; // Application Excel
	var oExcelSheet; // Feuille de calcul
	var oWkBooks;
	var cols; // Nombre de colonnes du tableau
	var j=0;
	oExcel = new ActiveXObject('Excel.Application');
	oWkBooks = oExcel.Workbooks.Add;
	oExcelSheet = oWkBooks.Worksheets(1);

	oExcelSheet.Activate();

	if (eSrc.tagName != 'TABLE') {
		alert('L\'export vers Excel ne fonctionne qu\'avec un tableau.');
		return false;
	}
	cols = Math.ceil(eSrc.cells.length / eSrc.rows.length)-diff;
	for (var i = 0; i < eSrc.cells.length; i ++)
	{
		var c, r;
		j++;
		if(j>cols){
		//	alert(j+'  '+cols);
			i+=diff;
			j=0;
		}
		r = Math.ceil((i+1) / cols); //lignes en cours
		c= (i+1)-((r-1)*cols) //colonnes en cours
		//En tête de colonnes
		if (eSrc.cells(i).tagName == 'TH') {
		oExcel.ActiveSheet.Cells(r,c).Font.Bold = true;
		oExcel.ActiveSheet.Cells(r,c).Interior.Color = 14474460; //gris
		}

		// Texte en gras
		if (eSrc.cells(i).childNodes.length > 0 && eSrc.cells(i).childNodes(0).tagName == "B")
			oExcel.ActiveSheet.Cells(r,c).Font.Bold = true;
		// Rempli le contenu
		oExcel.ActiveSheet.Cells(r,c).Value = eSrc.cells(i).innerText;
		}
		oExcelSheet.Application.Visible = true;

}

Conclusion :


cet code vous permeterent d'éxportation des table en html vers Excel.

A voir également

Ajouter un commentaire Commentaires
Messages postés
148
Date d'inscription
dimanche 25 janvier 2004
Statut
Membre
Dernière intervention
21 janvier 2009

et a quoi sert la variable "diff" en entrée?
Merci
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
la moindre des choses c'est de dire d'où
vient le copié/collé, de citer l'auteur.
car vu la question :
http://www.javascriptfr.com/infomsg_EXPORTATION-DONNEES-VERS-EXCEL_939253.aspx#1

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.