Retroceder   Foros del Web > Temas generales de computación > Ofimática

Respuesta
 
Herramientas Desplegado
Antiguo 08-may-2008, 12:09   #1 (permalink)
GEMO ha deshabilitado el karma
 
Fecha de Ingreso: julio-2007
Mensajes: 38
Pregunta 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
GEMO está desconectado   Responder Citando
Antiguo 09-may-2008, 12:51   #2 (permalink)
abrahamvj tiene algunos puntos positivos de karma
 
Avatar de abrahamvj
 
Fecha de Ingreso: julio-2006
Ubicación: Lima, Peru
Mensajes: 475
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
abrahamvj está desconectado   Responder Citando
Antiguo 09-may-2008, 13:25   #3 (permalink)
GEMO ha deshabilitado el karma
 
Fecha de Ingreso: julio-2007
Mensajes: 38
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
GEMO está desconectado   Responder Citando
Antiguo 09-may-2008, 15:08   #4 (permalink)
abrahamvj tiene algunos puntos positivos de karma
 
Avatar de abrahamvj
 
Fecha de Ingreso: julio-2006
Ubicación: Lima, Peru
Mensajes: 475
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
abrahamvj está desconectado   Responder Citando
Antiguo 13-may-2008, 07:49   #5 (permalink)
GEMO ha deshabilitado el karma
 
Fecha de Ingreso: julio-2007
Mensajes: 38
De acuerdo 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
GEMO está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 04:50.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93