Ver Mensaje Individual
  #8 (permalink)  
Antiguo 26/02/2009, 08:44
Avatar de Zeptimo
Zeptimo
 
Fecha de Ingreso: enero-2008
Mensajes: 269
Antigüedad: 17 años
Puntos: 1
De acuerdo Respuesta: uso de referencias

la referencia using Microsoft Visual Basic ya esta agregada....

Código:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using sd = System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Collections;
using moie = Microsoft.Office.Interop.Excel;
using System.Reflection; //para el valor missing

private void toolStripButton4_Click(object sender, EventArgs e)
        {
            try
            {
                string temp;
                int iColumnas = 0;
                moie.Application xlsApp = new moie.Application();
                //xlsApp.DisplayAlerts = false;
                moie.Worksheet xlsSheet;
                moie.Workbook xlsBook;
                xlsApp.Visible = false;

                xlsBook = xlsApp.Workbooks.Add(true);
                xlsSheet = (moie.Worksheet)xlsBook.ActiveSheet;

                for (int iCol = 0; iCol < dataGridView.Columns.Count; iCol++)
                {
                    if (dataGridView.Columns[iCol].Visible == true)
                    {
                        xlsSheet.Cells[1, iCol] = dataGridView.Columns[iCol].HeaderText;
                        iColumnas++;
                    }

                }

                for (int iRow = 0; iRow < dataGridView.Rows.Count; iRow++)
                {
                    for (int iCol = 0; iCol < dataGridView.Columns.Count; iCol++)
                    {
                        if (dataGridView.Columns[iCol].Visible == true)
                        {
                            temp = dataGridView[iCol, iRow].Value.ToString();
                            if (IsDate(temp) == true && dataGridView.Columns[iCol].HeaderText == "Dia")
                            {
                                    temp = Convert.ToDateTime(temp).ToShortDateString();
                            }
                            xlsSheet.Cells[iRow + 2, iCol] = temp;
                        }
                    }
                }

                //Definir el rango y aplicarle un formato.
                moie.Range rango = xlsSheet.get_Range(xlsSheet.Cells[1, 1], xlsSheet.Cells[dataGridView.Rows.Count + 1, iColumnas]);
                rango.Cells.AutoFormat(moie.XlRangeAutoFormat.xlRangeAutoFormatList2,
                Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

                xlsSheet.Columns.AutoFit(); //Ajusta ancho de todas las columnas
                xlsApp.Visible = true;
                //xlsApp.Quit();
            }
            catch (Exception ue)
            { }
            finally { }
        }
    }
saludos.............