Exportar datos de un textbox a una celda de excel

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.
Respuesta
1
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

1 respuesta más de otro experto

Respuesta
1
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

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas