En primer lugar te agradezco el que tomes el tiempo para leer mi duda y te agradezco más si pudieras ayudarme, la duda que tengo es la siguiente: Yo uso visual studio 2010 para crear algunas aplicaciones y ahora tengo la necesidad personal de realizar una aplicación (Form) el cual envíe información a un formato de excel ya realizado, esto con la ayuda de un botón, espero me puedas ayudar, esta información se encuentra alojada en un textbox.
Si vas a rellenar una hoja de excel con formatos ya denidos debes utilizar la referencia y el imports del estacio de nombres: Microsoft. Office. Interop. Excel, con este puedes manejar todo el docuemnto excel, abrirlo, grabarlo, posicionarte en uan celda, etc.
Gracias por tu ayuda pero la situación es que no se como funciona el Microsoft.Office.Interop.Excel, no se si pudieras enviarme un código que pudiera resolver mi problema, lo único que tengo es un form que realiza cálculos sencillos (calculo del IVA y datos de clientes), esta información esta alojada en una variable y/o textbox.text y necesito enviarlos a un archivo en excel en una celda especifica cada uno, espero me pudieras ayudar, saludos
Aquí te dejo el código que yo utilizo para exportar los datos de una base de datos access a excel, solo tendrías que adecuarlo para rellenarlo con tus datos. Recuerda que tienes que agregar la referencia Imports Microsoft. Office. Interop. Excel Por lo demás es adecuarlo a tus necesidades. Un saludo Private Sub Exportarclick(ByVal sender As Object, ByVal e As EventArgs) '///////////////////////////// '// Creamos el Objeto Excel '///////////////////////////// Dim sBaseDatos As String = Conexion.RutaBd Dim sConexion As String = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & sBaseDatos Dim cn As New OleDb.OleDbConnection(sConexion) Dim MiAdaptador As New OleDb.OleDbDataAdapter Dim Sql As String = "SELECT * From Fichas_Personal" Dim comando As New OleDb.OleDbCommand(Sql, cn) MiAdaptador.SelectCommand = comando MiAdaptador.Fill(ds) Dim m_Excel Dim objLibroExcel Dim objHojaExcel m_Excel = CreateObject("Excel.Application") objLibroExcel = m_Excel.Workbooks.Add() objHojaExcel = objLibroExcel.Worksheets(1) objHojaExcel.Name = "Ficha" objHojaExcel.Visible = Excel.XlSheetVisibility.xlSheetVisible objHojaExcel.Activate() '///////////////////////////////////////////////////////// '// Definimos dos variables para controlar fila y columna '///////////////////////////////////////////////////////// Dim fila As Integer = 1 Dim columna As Integer = 1 '///////////////////////////////////////////////// '// Armamos la linea con los títulos de columnas '///////////////////////////////////////////////// objHojaExcel.Range("A1").Select() For Each dc In ds.Tables(0).Columns objHojaExcel.Range(nombreColumna(columna) & 1).Value = dc.ColumnName columna += 1 Next fila += 1 '///////////////////////////////////////////// '// Le damos formato a la fila de los títulos '///////////////////////////////////////////// Dim objRango As Excel.Range = objHojaExcel.Range("A1:" & nombreColumna(ds.Tables(0).Columns.Count) & "1") objRango.Font.Bold = True objRango.Cells.Interior.ColorIndex = 35 objRango.Cells.Borders(Excel.XlBordersIndex.xlDiagonalDown).LineStyle = Excel.XlLineStyle.xlLineStyleNone objRango.Cells.Borders(Excel.XlBordersIndex.xlDiagonalUp).LineStyle = Excel.XlLineStyle.xlLineStyleNone objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeLeft).LineStyle = Excel.XlLineStyle.xlLineStyleNone objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeRight).LineStyle = Excel.XlLineStyle.xlContinuous objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeTop).LineStyle = Excel.XlLineStyle.xlContinuous objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeBottom).LineStyle = Excel.XlLineStyle.xlContinuous '////////////////////////////////////////// '// Cargamos todas las filas del datatable '////////////////////////////////////////// ProgressBar1.Maximum = ds.Tables(0).Rows.Count columna = 1 ProgressBar1.Value = 0 For Each dr In ds.Tables(0).Rows columna = 1 For Each dc In ds.Tables(0).Columns If dc.ColumnName = "Baja" Then If dr(dc.Columnname) = False Then 'MsgBox("Falso") objHojaExcel.Range(nombreColumna(1) & fila, nombreColumna(columna) & fila).interior.color = 255 Else End If End If objHojaExcel.Range(nombreColumna(columna) & fila).Value = dr(dc.ColumnName) columna += 1 Next fila += 1 ProgressBar1.Value += 1 Next '////////////////////////////////////// '// Ajustamos automaticamente el ancho '// de todas las columnas utilizada '////////////////////////////////////// objRango = objHojaExcel.Range("A1:" & nombreColumna(ds.Tables(0).Columns.Count) & ds.Tables(0).Rows.Count.ToString) objRango.Select() objRango.Columns.AutoFit() '///////////////////////////////////// '// Le decimos a Excel que se muestre '///////////////////////////////////// MsgBox("Exportación a Excel completa", MsgBoxStyle.Information, ".:: solovb.net ::.") m_Excel.Visible = True End Sub