Javascript et excel

Fermé
Michael_Ange Messages postés 223 Date d'inscription jeudi 27 novembre 2003 Statut Membre Dernière intervention 29 mai 2015 - 15 déc. 2009 à 09:26
UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 - 18 déc. 2009 à 16:52
Bonjour à tous.

J'essaie de faire une fonction en javascript qui va me permettre de générer un fichier fichier excel sur les postes clients.

J'ai essayé d'utilisé un script de ce genre :

var oExcel;
var oExcelSheet;
var oWkBooks;

oExcel = new ActiveXObject('Excel.Application');
oWkBooks = oExcel.Workbooks.Add();
oExcelSheet = oWkBooks.WorkSheets(1);

oExcelSheet.Activate();

oExcel.ActiveSheet.Cells(1,1).Value = document.getElementById('cel1').innerHTML;
......
oExcelSheet.Application.Visible = true;


Ce script fonctionne correctement avec Internet Explorer, mais comme vous pouvez l'imaginez, pas du tout avec firefox à cause de l'instance de l'ActiveX que j'utilise.

Je cherche une alternative pour pouvoir permettre à mes utilisateur d'utiliser leurs navigateurs favoris, mais j'ai rien trouvé pour le moment.

Je suis ouvert à toutes suggestions.

Merci d'avance.
A voir également:

5 réponses

UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 64
15 déc. 2009 à 10:55
depuis 2003, word et excel créent des fichiers "à la" xml, on peut leur fourguer des xml relativement canoniques. Je te montre un exemple, si tu ne trouves rien sur le web.
0
Michael_Ange Messages postés 223 Date d'inscription jeudi 27 novembre 2003 Statut Membre Dernière intervention 29 mai 2015 19
15 déc. 2009 à 11:08
Ok. je vais faire quelques recherches dans ce sens, mais si tu as déjà quelque chose sous la main(une adresse ou un exemple), envoie moi ça s'il te plait.
0
UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 64
15 déc. 2009 à 11:18
voici:
<?xml version="1.0" encoding="windows-1252"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:o="urn:schemas-microsoft-com:office:office"
 xmlns:x="urn:schemas-microsoft-com:office:excel"
 xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:html="http://www.w3.org/TR/REC-html40/">
 <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
  <Author>Author</Author>
  <LastAuthor>Author</LastAuthor>
  <Created>2007-01-01T00:00:00Z</Created>
  <Company>Company</Company>
  <Version>11</Version>
 </DocumentProperties>
 <Styles>
  <Style ss:ID="Default" ss:Name="Normal">
   <Alignment ss:Vertical="Bottom"/>
   <Borders/>
   <Font/>
   <Interior/>
   <NumberFormat/>
   <Protection/>
  </Style>
 </Styles>
<Worksheet ss:Name="UneFeuille">
	<Table>
		<Row>
			<Cell><Data ss:Type="String">nom</Data></Cell>
			<Cell><Data ss:Type="String">prénom</Data></Cell>
			<Cell><Data ss:Type="String">email</Data></Cell>
			<Cell><Data ss:Type="String">123456789</Data></Cell>
			<Cell><Data ss:Type="String">rue</Data></Cell>
		</Row>
		<Row>
			<Cell><Data ss:Type="String">nom</Data></Cell>
			<Cell><Data ss:Type="String">prénom</Data></Cell>
			<Cell><Data ss:Type="String">email</Data></Cell>
			<Cell><Data ss:Type="String">123456789</Data></Cell>
			<Cell><Data ss:Type="String">rue</Data></Cell>
		</Row>
	</Table>
</Worksheet>
</Workbook>

0
Michael_Ange Messages postés 223 Date d'inscription jeudi 27 novembre 2003 Statut Membre Dernière intervention 29 mai 2015 19
18 déc. 2009 à 10:49
Excuse de ne te repondre que maintenant.
Merci pour le bout de code, ça va me faciliter mes recherches.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 64
18 déc. 2009 à 16:52
Pas de problème.
Je pense que dans ton cas, le plus compliqué, va être de faire que le javascript génère un fichier (quel qu'il soit) sur le poste client. Mais bon... peut-être que c'est quand même possible sans passer par un activeX.
0