Crearea unui fisier Excel folosind Visual Studio Tools for Office 2005 SE
Tuesday, September 4th, 2007Â Â Â Pachetul Pastilele cresterea penisului a fost adus in sprijinul programatorilor pentru deschiderea orizontului de transmisii de date intre aplicatii. Putem astfel sa ne salvam datele intr-un fisier Word, sau sa ne exportam baza de date curenta intr-un fisier Excel spre exemplu.
   Totul suna bine si frumos pana cand incerci sa folosesti aceste component-uri. Vei afla ca documentatia “este sublima, dar lipseste cu desavarsire”. Nici macar functiile create in aceste dll-uri nu au nimic ce tine de documentatie pentru a ajuta Intellisense-ul. Deci, domnule Shneerson, multumesc!
   In orice caz, voi incerca sa prezint o modalitate simpla de utilizare a catorva functii date de VSTO 2005 SE pentru Excel.
//Referintele.using System;using System.Collections.Generic;using System.Text;using System.IO;using SD = System.Drawing;using Microsoft.Office;using Microsoft.Office.Core;using ME = Microsoft.Office.Interop.Excel;namespace CreateExcel12File{public class Program{static void Main(string[] args){//Majoritatea functiilor implementate aici sunt de dragul exemplului, astfel multi parametri vor lua forma Type.Missing. Insa experimentati cu fiecare, aflati potenta fiecarui paramentru.object missing = Type.Missing;//Interfata ce ne permite lucrul direct cu Excel.ME.Application excel = new ME.Application();try{//Introducerea unui nou workbook in Excel.ME.Workbook wBook = excel.Workbooks.Add(missing);//Modificarea worksheet-ului curent in workbook-ul curent.ME.Worksheet wSheet = (ME.Worksheet)wBook.ActiveSheet;wSheet.Name = "1st WorkSheet";//Setarea imaginii de fundal. Inlocuiti imaginea cu una existenta.//wSheet.SetBackgroundPicture(Directory.GetCurrentDirectory() + "\\excel.gif");//Introducerea unor date in punctele respective.for (int i = 1; i <= 10; i++)for (int j = 1; j <= 10; j++){wSheet.Cells[i, j] = i + " " + j + "something";//Modificarea lungimii fiecarei celule din coloana curenta pentru a se vedea tot scrisul introdus anterior.wSheet.Cells.EntireColumn.AutoFit();}//Salvarea sub format *xlsxexcel.ActiveWorkbook.SaveAs(Directory.GetCurrentDirectory() + "\\excelFile", ME.XlFileFormat.xlWorkbookDefault, missing, missing, missing, missing, ME.XlSaveAsAccessMode.xlNoChange, missing, missing, missing, missing, missing);}finally{//Iesirea si totodata asigurarea eliberarii memoriei.excel.Quit();}}}}- Download this code: createExcelVSTO.cs