Ajuda com Visual Basic e excel

  • Autor Autor iori1700
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
I

iori1700

Beta
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
Que tal amigos, queria hacerles una consulta. Tengo una planilla de excel en la cual completarias los datos en celdas especificas mediante un formulario hecho en vb. El tema es que me esta cargando todos los datos pero hay un problema, y es que mi excel tiene 2 hojas y al cargar los datos en los textbox cuando guardo se guardan en en la misma celda de las 2 hojas por lo que no me esta funcionando bien, habría alguna manera que pueda cargar datos y se almacenen en una celda de una hoja especifica y no en las 2?
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Sí, es posible guardar los datos en una hoja específica en Excel utilizando Visual Basic. Puedes utilizar la propiedad "Worksheets" de la clase "Workbook" para especificar en cuál hoja deseas guardar los datos.

Aquí te dejo un ejemplo de cómo guardar un dato en la celda A1 de la hoja "Hoja1":

Inserir CODE, HTML ou PHP:
' Abre el archivo Excel
Dim xlApp As Excel.Application
Dim xlWorkbook As Excel.Workbook
Dim xlWorksheet As Excel.Worksheet

Set xlApp = New Excel.Application
Set xlWorkbook = xlApp.Workbooks.Open("C:\miarchivo.xlsx")

' Selecciona la hoja en la que quieres guardar los datos
Set xlWorksheet = xlWorkbook.Worksheets("Hoja1")

' Guarda el dato en la celda A1 de la hoja seleccionada
xlWorksheet.Range("A1").Value = MiDato

' Guarda el archivo
xlWorkbook.Save

' Cierra el archivo Excel
xlWorkbook.Close
xlApp.Quit

Set xlApp = Nothing
Set xlWorkbook = Nothing
Set xlWorksheet = Nothing

Espero que te sea de ayuda. Si tienes alguna pregunta adicional, no dudes en preguntar.
 
Última edição por um moderador:
Sí, es posible guardar los datos en una hoja específica en Excel utilizando Visual Basic. Puedes utilizar la propiedad "Worksheets" de la clase "Workbook" para especificar en cuál hoja deseas guardar los datos.

Aquí te dejo un ejemplo de cómo guardar un dato en la celda A1 de la hoja "Hoja1":

Inserir CODE, HTML ou PHP:
' Abre el archivo Excel
Dim xlApp As Excel.Application
Dim xlWorkbook As Excel.Workbook
Dim xlWorksheet As Excel.Worksheet

Set xlApp = New Excel.Application
Set xlWorkbook = xlApp.Workbooks.Open("C:\miarchivo.xlsx")

' Selecciona la hoja en la que quieres guardar los datos
Set xlWorksheet = xlWorkbook.Worksheets("Hoja1")

' Guarda el dato en la celda A1 de la hoja seleccionada
xlWorksheet.Range("A1").Value = MiDato

' Guarda el archivo
xlWorkbook.Save

' Cierra el archivo Excel
xlWorkbook.Close
xlApp.Quit

Set xlApp = Nothing
Set xlWorkbook = Nothing
Set xlWorksheet = Nothing

Espero que te sea de ayuda. Si tienes alguna pregunta adicional, no dudes en preguntar.
' Guarda el dato en la celda A1 de la hoja seleccionada
xlWorksheet.Range("A1").Value = MiDato

Como podria especificar un campo por ejemplo que sea columna D, celda 5?
 
' Guarda el dato en la celda A1 de la hoja seleccionada
xlWorksheet.Range("A1").Value = MiDato

Como podria especificar un campo por ejemplo que sea columna D, celda 5?
Puedes especificar la celda utilizando la siguiente sintaxis:
Inserir CODE, HTML ou PHP:
xlWorksheet.Range("D5").Value = MiDato
Donde "D5" es la dirección de la celda que deseas modificar. En este caso, la celda de la columna D, fila 5.

Si deseas modificar una celda utilizando variables, puedes hacerlo de la siguiente manera:
Inserir CODE, HTML ou PHP:
Dim columna As String
Dim fila As Integer
columna = "D"
fila = 5
xlWorksheet.Range(columna & fila).Value = MiDato
En este caso, columnas es una variable de tipo string que almacena el nombre de la columna, y fila es una variable de tipo entero que almacena el número de la fila. Luego, se utiliza el operador "&" para concatenar la dirección de la celda.
 
Última edição por um moderador:
' Guarda el dato en la celda A1 de la hoja seleccionada
xlWorksheet.Range("A1").Value = MiDato

Como podria especificar un campo por ejemplo que sea columna D, celda 5?
Seria bueno que aclaras si el Bot te logro solucionar el problema que tenias?
 
Hola que tal?. Cuando trabajas con formularios de Visual Basic en libros con varias hojas, el error común es que el código no tiene especificado el nombre exacto de la hoja donde debe meter los datos. Si no le pones el Sheets("NombreDeTuHoja").

Select antes del rango, te va a guardar la información en la hoja que tengas abierta en ese momento y te desconfigura todo.
 

Tópicos similares

yocrin
Respostas
1
Visitas
101
soyjavi
S
yocrin
Respostas
1
Visitas
88
yocrin
yocrin
Plasech
Respostas
4
Visitas
267
Plasech
Plasech
Eduardo
Respostas
1
Visitas
219
sebasthyan97
sebasthyan97
Voltar
Topo