Exportation excel

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

Exportation excel

Messagepar Pat » 11 Avr 2003 à 10:19

Est-ce que quelqu'un aurait par hasard déjà fait un code pour une exportation excel d'une vue à partir du browser?Pat
Pat
 

Re: Exportation excel

Messagepar yop » 11 Avr 2003 à 10:27

le + simple (pour moi, en tout cas), c'est de générer un fichier texte tabulé. via le web, un bouton peut très bien appeler un agent LS qui va écrire les données voulues dans un fichier texte tabulé.ouvrir ce fichier dans excel formate le tout parfaitement en laissant les options par défaut.avantages :1) c très simple2) c compatible quelque soit la version d'excel3) c compatible avec tout logiciel important du fichier texte tabulé (c dire le nombre...)inconvénient :1) le type doit ensuite 'habiller' sa feuille excel lui-même comme un grand.mais je n'y vois que des avantages, en fait.car 1) si c'est pour faire des stats, mieux vaut pas de fioritures.2) tu as un code LS différent pour excel 97, excel 2000, excel XP.3) tu as un code LS différent pour excel français, excel anglais (car c'est pas les mêmes macros car Microsoft les a traduites ^^, génial la compatibilité...et si on veut vraiment ouvrir dans un bel habillage, suffit d'avoir un habillage par défaut correspondant au script que l'on envoi et on en parle + :)
yop
 

Re: Exportation excel

Messagepar yop » 11 Avr 2003 à 10:29

au moins, avec du texte tabulé, le code sera toujours le même.
yop
 

Re: Exportation excel

Messagepar Pat » 11 Avr 2003 à 13:45

Ca m'intéresse beaucoup, c'est tout à fait ce que je dois faire mais je ne sais pas du tout comment y arriver. Est-ce que tu pourrais m'aider? Je n'ai jamais fait ce genre de choses.Merci d'avance,Pat
Pat
 

Re: Exportation excel

Messagepar lucie » 25 Avr 2003 à 14:19

Agent exportManually From Actions MenuRun once (@Command may be used)LotusScriptDeclarations :Dim vuefiche As notesviewDim docfiche As notesdocument'variables d'exportDim xlFilename As StringDim xlWorkbook As VariantDim xlSheet As VariantDim xlCells As VariantDim row As IntegerDim collum As IntegerInitialize :Sub Initialize%REMlucie 24/10/2002Agent permettant l'envoi des informations contenues dans la vue nommée VueD'Exportation vers C:sous forme de feuille excel nommé C:\NomDuDossier\NomDuDocExcel+jour+mois+annee.xlsD'aprés un document type réferencé sous C:\NomDuDossier\NomDuDocExcel.xls%END REM On Error Goto errorhandle Dim session As New notessession Dim db As notesdatabase Dim encours As String Set db=session.currentdatabase Set vuefiche=db.getview("VueD'Exportation") Set docfiche=vuefiche.getfirstdocument 'Création du chemin du fichier edition données brutes jour=Cstr(Day(Now)) mois=Cstr(Month(Now)) annee=Cstr(Year(Now)) xlFilename="C:\NomDuDossier\NomDuDocExcel"+jour+mois+annee+".xls" ' Ouverture de Excel Set Excel=CreateObject("excel.application") Excel.visible=False ' empeche l'ouverture de la fenetre Excel ' Création du fichier à partir du modèle Filecopy "C:\NomDuDossier\NomDuDocExcel.xls",xlFilename ' Ouverture du fichier Excel.Workbooks.open xlFilename Set xlWorkbook=Excel.ActiveWorkbook Set xlSheet=xlWorkbook.ActiveSheet Set xlCells=xlSheet.cells ' Ecriture du fichier row=1 collum=1 Set docfiche=vuefiche.getfirstdocument Do Until docfiche Is Nothing row=row+1A FAIRE POUR CHAQUE COLONNE xlCells(row,collum).Value=docfiche.NomChamp1°Colonne(0) xlCells(row,collum+1).Value=docfiche.NomChamp2°Colonne(0) xlCells(row,collum+2).Value=docfiche.NomChamp3°Colonne(0) A FAIRE POUR CHAQUE COLONNE Set docfiche=vuefiche.getnextdocument(docfiche) Loop Excel.ActiveWorkbook.save Excel.ActiveWorkbook.close(0) Excel.quit Exit SubErrorhandle: Excel.ActiveWorkbook.close(0) Excel.quitEnd SubPour resumer, tu crées un dossier C:\NomDuDossiertu créés un document excel avec pour la première ligne les noms correspondant à tes colonnes de la vue.tu sauvegardes ce doc sous la forme C:\NomDuDossier\NomDuDocExcel.xlsPuis dans l'agent tu appliques :xlCells(row,collum).Value=docfiche.NomChampColonne(0)pour chaque colonne, dans le même ordre en n'oubliant pas d'incrémenter collumvoilà, par contre si tu veux qu'il se lance automatiquement depuis le web il faut rajouter du code (ça par contre je ne sais pas comment il faut faire et je n'en avait pas besoin). Sinon ce code foctionne bien lorsque tu le lances par le chemin: Actions -> Nom_de_l'agent
lucie
 


Retour vers Développement

cron