![]() |
duda en macro de excel lo que intento es lo siguiente en base a unos imputbox estoy guardando unos reportes de alumnos pero tengo una hoja por alumno en la cual le di por nombre el registro del alumno,de que manera puedo hacer que al comparar la variable donde escriba el registro los datos se guarden en la hoja igual al valor de la variable. esta es parte de mi codigo espero su apoyo dim al as integer al = InputBox("Alumno", "Alumno") falta= InputBox("Tipo de falta:", "especificar") lugar = InputBox("Lugar donde se sucito:", "especificar") reporto = InputBox("quien reporto:", "especificar") fecha = InputBox("fecha de reporte:", "fecha") strMsg = "Su reporte fue creado" MsgBox strMsg hoja(al).Select Do While Not IsEmpty(ActiveCell) ActiveCell.Offset(1, 0).Select Loop ActiveCell = falta ActiveCell.Offset(0, 1) = lugar ActiveCell.Offset(0, 2) = reporto ActiveCell.Offset(0, 3) = fecha |
Re: duda en macro de excel Siguiendo tus mismos parametros, y suponiendo que, tal y como tu dices, las hojas tienen nombres: dim al as string al = InputBox("Alumno", "Alumno") falta= InputBox("Tipo de falta:", "especificar") lugar = InputBox("Lugar donde se sucito:", "especificar") reporto = InputBox("quien reporto:", "especificar") fecha = InputBox("fecha de reporte:", "fecha") strMsg = "Su reporte fue creado" MsgBox strMsg Sheets(al).Select [A1].select Do While Not IsEmpty(ActiveCell) ActiveCell.Offset(1, 0).Select Loop ActiveCell = falta ActiveCell.Offset(0, 1) = lugar ActiveCell.Offset(0, 2) = reporto ActiveCell.Offset(0, 3) = fecha OJO, no digo que lo que este haciendo sea lo ideal, solo he seguido tus misma spautas. Abraham |
Re: duda en macro de excel Gracias Abraham mira mi codigo completo es este claro sin hacer la comparación del registro para ponerlo en la hoja correspondiente entonces en la linea Hoja1.select yo quiero sustituir Hoja"(variable)".select donde la variable contiene el nombre de la hoja esto para que cada que inrete el registro del alumno la demas información se vaya a la hoja correspondiente al menos esa es mi idea aunque creo que no es la forma de hacerlo gracias de nuevo Private Sub CommandButton1_Click() Dim falta As String Dim lugar As String Dim reporto As String Dim fecha As String falta = InputBox("Tipo de falta:", "especificar") lugar = InputBox("Lugar donde se sucito:", "especificar") reporto = InputBox("quien reporto:", "especificar") fecha = InputBox("fecha de reporte:", "fecha") strMsg = "Su reporte fue creado" MsgBox strMsg Hoja1.Select Do While Not IsEmpty(ActiveCell) ActiveCell.Offset(1, 0).Select Loop ActiveCell = falta ActiveCell.Offset(0, 1) = lugar ActiveCell.Offset(0, 2) = reporto ActiveCell.Offset(0, 3) = fecha End Sub |
Re: duda en macro de excel Listo, como ya dije antes, no es lo optimo, pero segui tus parametros y te servira: Private Sub CommandButton1_Click() Dim hoja As String Dim falta As String Dim lugar As String Dim reporto As String Dim fecha As String hoja = InputBox("Coloca el nombre de la hoja", "Hoja") falta = InputBox("Tipo de falta:", "especificar") lugar = InputBox("Lugar donde se sucito:", "especificar") reporto = InputBox("quien reporto:", "especificar") fecha = InputBox("fecha de reporte:", "fecha") strMsg = "Su reporte fue creado" MsgBox strMsg Worksheets(hoja).Select Do While Not IsEmpty(ActiveCell) ActiveCell.Offset(1, 0).Select Loop ActiveCell = falta ActiveCell.Offset(0, 1) = lugar ActiveCell.Offset(0, 2) = reporto ActiveCell.Offset(0, 3) = fecha End Sub Abraham |
Re: duda en macro de excel Gracias Abraham se que no es lo optimo pero la verdad no tengo mucho trabajando com macros y conforme voy avanzando voy aprndiendo gracias a su ayuda. Gracias de nuevo :aplauso: |
| La zona horaria es GMT -6. Ahora son las 20:54. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.