Autor Tema: ¿cómo ingresar datos a hoja de excel existente desde visual studio Visual Basic?  (Leído 2888 veces)

robertopjam

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 1
    • Ver Perfil
Hola a todos. Tengo una duda, cómo puedo ingresar datos a una hoja de excel (2016) desde visual basic 2012.

a modo de ejemplo la hoja de excel tiene los datos : en A1 nombre, en B1 apellido en C1 ciudad....

Quiero saber si se puede y como lo hago desde visual stdudio 2012.
capturado datos con textbox o botones.

desde ya muchas gracias
« Última modificación: 24 de Julio 2017, 19:34 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2660
    • Ver Perfil
Buenas, sí se puede operar sobre un fichero excel usando Visual Basic

Este sería un ejemplo tomado de un curso de aprenderaprogramar

Para hacer posible operar con ficheros de Excel vete al menú Proyecto -- > Agregar referencia -- > Elige la ficha COM (componente) -- > Selecciona Microsoft Excel 12.0 Object Library (o un nombre similar) y pulsa aceptar.

Crea un fichero Excel con el siguiente contenido:

Celda A1: Sala del museo   Celda B1: Visitas
Celda A2: Van Gogh      Celda B2: 32
Celda A3: Picasso      Celda B3: 24
Celda A4: Monet         Celda B4: 55
Celda A5: Miró         Celda B5: 44

Guarda y cierra este archivo en una ruta de tu ordenador y anota la ruta porque te va a ser necesaria

Ahora en Visual Basic crea un nuevo proyecto con un formulario y coloca en el formulario un label amplio y un botón.

Escribe el siguiente código (reemplaza la ruta del fichero excel por la ruta donde tú hayas guardado el fichero):

Código: [Seleccionar]
Imports Excel = Microsoft.Office.Interop.Excel

Public Class Form1
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Label1.Text = ""
        Label1.AutoSize = False
    End Sub
   
    Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim objXLApp As Excel.Application
        Dim intLoopCounter As Integer
        Dim objXLWb As Excel.Workbook
        Dim objXLWs As Excel.Worksheet
        Dim objRange As Excel.Range

        objXLApp = New Excel.Application
        objXLApp.Workbooks.Open("C:\Users\Juan\CursoVB\semana6\ejemploSemana6.xlsx")
        objXLWb = objXLApp.Workbooks(1)
        objXLWs = objXLWb.Worksheets(1)
        MsgBox("Ahora la celda A5 contiene: " & objXLWs.Cells(5, 1).value)
        For intLoopCounter = 1 To CInt(objXLWs.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell).Row)
            objRange = objXLWs.Range("A" & intLoopCounter)
            Label1.Text = Label1.Text & vbCrLf & objRange.Value
            objRange = objXLWs.Range("B" & intLoopCounter)
            Label1.Text = Label1.Text & " -- > " & objRange.Value
        Next intLoopCounter

        'Escribimos en el fichero
        objXLWs.Cells(5, 1) = "Rembrandt"
        MsgBox("Ahora la celda A5 contiene: " & objXLWs.Cells(5, 1).value)
        objXLApp.Quit()
    End Sub

End Class

Ejecuta el programa. El resultado esperado es que muestre una caja de alerta indicando: “Ahora la celda B2 contiene Miró” y seguidamente que muestre “Ahora la celda B2 contiene Rembrandt” (si te pregunta si quieres guardar los cambios en el fichero excel responde Sí). En el label se debe mostrar la información que existía inicialmente en el fichero. Comprueba que ahora en el fichero en lugar de Miró figura Rembrandt.

Salu2

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".