Hola amigos
en este codigo lo que hace es cojer un archivo de excel abrirlo y llenar los datos que necesito como mi reporte. Para esto utilizo 3 dll que son:
-Interop.Microsoft.Office.Core.dll
-Microsoft.Office.Interop.Excel.dll
-Microsoft.Vbe.Interop.dll
con estas 3 dll son con las que e realizado la aplicacion
y el codigo completo es el siguiente:
----------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Office = Microsoft.Office.Core;
using Excel = Microsoft.Office.Interop.Excel;
namespace excel
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private static object vk_missing = System.Reflection.Missing.Value;
private static object vk_visible = true;
private static object vk_false = false;
private static object vk_true = true;
#region OPEN WORKBOOK VARIABLES
private object vk_update_links = 0;
private object vk_read_only = vk_true;
private object vk_format = 1;
private object vk_password = vk_missing;
private object vk_write_res_password = vk_missing;
private object vk_ignore_read_only_recommend = vk_true;
private object vk_origin = vk_missing;
private object vk_delimiter = vk_missing;
private object vk_editable = vk_false;
private object vk_notify = vk_false;
private object vk_converter = vk_missing;
private object vk_add_to_mru = vk_false;
private object vk_local = vk_false;
private object vk_corrupt_load = vk_false;
#endregion
private void button1_Click(object sender, EventArgs e)
{
String ruta = Application.StartupPath + @"\rptalumnototal.xls";
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook excelBook = excelApp.Workbooks.Open(ruta, vk_update_links, vk_read_only, vk_format, vk_password,
vk_write_res_password, vk_ignore_read_only_recommend, vk_origin,
vk_delimiter, vk_editable, vk_notify, vk_converter, vk_add_to_mru,
vk_local, vk_corrupt_load);
Microsoft.Office.Interop.Excel.Worksheet excelWorksheet = (Microsoft.Office.Interop.Excel.Worksheet)excelBook.Worksheets.get_Item(1);
excelApp.Visible = true;
excelWorksheet.Cells[8,"C"] = "Dato 1";
excelWorksheet.Cells[9, "C"] = "Dato 2";
Excel.Range rango = excelWorksheet.get_Range(excelWorksheet.Cells[8, "C"], excelWorksheet.Cells[9, "C"]);
rango.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;
rango.Font.Bold = true;
rango.Borders.LineStyle = Excel.XlLineStyle.xlContinuous;
}
}
}
----------------------------------------------------------------------------------
el rptalumnototal.xls es el nombre de mi archivo que estoy usando como plantilla para mi reporte claro que se puede hacer se crea uno nuevo solo que en esta ocacion la e utilizado asi
Tambien en el codigo se encuentra dar al centro a los datos y darle el borde a las celdas donde estan los datos que le e agreago como para que se vea mucho mejor el Reporte :D. Preguntas a mi correo
ppe_16@hotmail.comMuchas gracias hasta otra oportunidad bye
Saludos
Victor Altamirano Vasquez