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

Respuesta
 
Herramientas Desplegado
Antiguo 27-abr-2008, 06:00   #1 (permalink)
kalaos7 ha deshabilitado el karma
 
Fecha de Ingreso: abril-2008
Mensajes: 7
Alegría boton en excel para meter datos en otra hoja con un input box

Hola, miren estoy haciendo una aplicacion en excel y me ha surgido la siguiente duda. Tengo en la hoja1 un boton para supuestamente que me salgan varios inputbox cuando le des, esos inputbox se almacenan en variables cuyo valor sera escrito en una fila en la hoja2. El problema esque si le doy al boton me lo hace perfecto, pero si quiero agregar otra fila en la hoja2 se sustituyen los datos que antes he metido, vamos resumiendo, me gustaria saber como almacenar los datos en la ultima fila vacia. Gracias
kalaos7 está desconectado   Responder Citando
Antiguo 27-abr-2008, 11:10   #2 (permalink)
gmansi ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2005
Mensajes: 502
Re: boton en excel para meter datos en otra hoja con un input box

Y no puedes hacer una minimacro que se posicione grabando las pulsaciones END y flecha hacia abajo por ejemplo? y luego meter ese pedacito de código antes de ejecutar tu aplicación?
gmansi está desconectado   Responder Citando
Antiguo 27-abr-2008, 11:33   #3 (permalink)
kalaos7 ha deshabilitado el karma
 
Fecha de Ingreso: abril-2008
Mensajes: 7
Alegría Re: boton en excel para meter datos en otra hoja con un input box

Cita:
Iniciado por gmansi Ver Mensaje
Y no puedes hacer una minimacro que se posicione grabando las pulsaciones END y flecha hacia abajo por ejemplo? y luego meter ese pedacito de código antes de ejecutar tu aplicación?
muchas gracias por responder, pero no entiendo lo que me quieres decir, te pongo el codigo de mi aplicacion para ver si asi te hes mas facil ayudarme:

Private Sub CommandButton1_Click()
Dim matricula As String
Dim marca As String
Dim modelo As String
Dim categoria As String
Dim combustible As String
Dim aceite As String
Dim strMsg As String
matricula = InputBox("Inserte la matricula del vehiculo:", "Nuevo vehiculo")
marca = InputBox("Inserte la marca del vehiculo:", "Nuevo vehiculo")
modelo = InputBox("Inserte el modelo del vehiculo:", "Nuevo vehiculo")
categoria = InputBox("Inserte la categoria del vehiculo:", "Nuevo vehiculo")
combustible = InputBox("Inserte el combustible del vehiculo:", "Nuevo vehiculo")
aceite = InputBox("Inserte el aceite del vehiculo:", "Nuevo vehiculo")
strMsg = "El coche con matricula " & matricula & ", " & modelo & " se a creado"
MsgBox strMsg
Dim hoja As Worksheet
Dim celda As Characters
For Each hoja In Sheets
Hoja6.Range("A3").Value = matricula
Hoja6.Range("B3").Value = marca
Hoja6.Range("c3").Value = modelo
Hoja6.Range("d3").Value = categoria
Hoja6.Range("e3").Value = combustible
Hoja6.Range("f3").Value = aceite

Next hoja
kalaos7 está desconectado   Responder Citando
Antiguo 27-abr-2008, 16:47   #4 (permalink)
gmansi ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2005
Mensajes: 502
Re: boton en excel para meter datos en otra hoja con un input box

Por tu ejemplo controlas la fila donde se escribe con el parámetro que le pasas al rango.

Hoja6.Range("f3").Value = aceite

Yo en tu lugar usaría una celda alejada de la planilla donde almacenar el número correspondiente la última fila con datos.

Por ejemplo en la celda M5 por decir algo digitas un 10 si es ahí donde comenzarás a llenar los datos.

Luego donde tú dices:

For Each hoja In Sheets
Hoja6.Range("A3").Value = matricula
Hoja6.Range("B3").Value = marca
Hoja6.Range("c3").Value = modelo
Hoja6.Range("d3").Value = categoria
Hoja6.Range("e3").Value = combustible
Hoja6.Range("f3").Value = aceite

Next hoja

Trataría de controlar ese "3" con el valor de la celda M10 y al terminar de llenar los datos aumentas el valor de M5 en 1.

O sea lo que antes era:

Hoja6.Range("A3").Value = matricula

quedaría

Hoja6.Range(=CONCATENAR("A3";M5)).Value = matricula

y luego de que terminas con todas las variales aumentas el valor de tu "contador de filas" M5 usando

AUMENTO=M5+1
M5=AUMENTO

Por supuesto que antes declaraste la variable AUMENTO como numérica.

A ver si con eso sale bien!
gmansi está desconectado   Responder Citando
Antiguo 28-abr-2008, 03:51   #5 (permalink)
kalaos7 ha deshabilitado el karma
 
Fecha de Ingreso: abril-2008
Mensajes: 7
Re: boton en excel para meter datos en otra hoja con un input box

Esta sentencia me da error en el igual antes de concatenar : Hoja6.Range(=CONCATENAR("A3";M5)).Value = matricula, no se xk puede ser, muxas gracias
kalaos7 está desconectado   Responder Citando
Antiguo 28-abr-2008, 04:21   #6 (permalink)
Colaborador
3pies tiene algunos puntos positivos de karma
 
Avatar de 3pies
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 1.798
Re: boton en excel para meter datos en otra hoja con un input box

Haz esto:
Código:
'Seleccionamos la celda B3
Range("B3").select
'hasta que no encuentre una fila vacía...
Do While Not IsEmpty(ActiveCell)
       'que vaya bajando una fila
       ActiveCell.Offset(1,0).select
Loop
'como ahora ya estamos en la fila vacía,
'solo nos queda escribir los datos:
Activecell = matricula
'pasamos a la siguiente columna
Activecell.offset(0,1)=marca
'pasamos a la siguiente columna
Activecell.offset(0,2)=modelo
'pasamos a la siguiente columna
Activecell.offset(0,3)=categoria
'pasamos a la siguiente columna
Activecell.offset(0,4)=combustible
'pasamos a la siguiente columna
Activecell.offset(0,5)=aceite
Salu2
3pies está desconectado   Responder Citando
Antiguo 28-abr-2008, 04:49   #7 (permalink)
kalaos7 ha deshabilitado el karma
 
Fecha de Ingreso: abril-2008
Mensajes: 7
De acuerdo Re: boton en excel para meter datos en otra hoja con un input box

Muchas gracias, ya me funciona el salto de fila, pero solo te molesto una vez mas: para insertar los datos en otra hoja? porque el boton lo tengo en la hoja1 y los datos los kiero insertar en la hoja6. muxas gracias y ya no molesto mas
kalaos7 está desconectado   Responder Citando
Antiguo 28-abr-2008, 05:01   #8 (permalink)
Colaborador
3pies tiene algunos puntos positivos de karma
 
Avatar de 3pies
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 1.798
Re: boton en excel para meter datos en otra hoja con un input box

Simplemente añade esta línea al comienzo de esas líneas que te acabo de poner:
Código:
Hoja6.Select
Esa línea debe ir justo encima de esta otra:
Código:
Range("B3").select
De esa forma, todo lo que hagas de ahí en adelante, estará referenciado a la Hoja6. Si posteriormente quieres hacer algo con otra hoja, simplemente tendrás que seleccionarla de la misma forma que te he puesto aquí.

Por ejemplo, si al finalizar, quieres volver a la hoja 1, pon esto después de la última línea que te puse en el post anterior:
Código:
Hoja1.Select
Salu2

PD: Si quieres que no se vea el "movimiento" de pantallas (el refresco constante de la pantalla, a medida que se van haciendo las cosas), pon esta otra línea al principio de tu macro (la primera línea):
Código:
Application.ScreenUpdating = False
y como última línea del macro, pon esta:
Código:
Application.ScreenUpdating = True
3pies está desconectado   Responder Citando
Antiguo 28-abr-2008, 05:14   #9 (permalink)
kalaos7 ha deshabilitado el karma
 
Fecha de Ingreso: abril-2008
Mensajes: 7
De acuerdo Re: boton en excel para meter datos en otra hoja con un input box

Muchas gracias por la ayuda, ahora me funciona perfectamente. Para otra duda no dudare en venir a este foro, gracias
kalaos7 está desconectado   Responder Citando
Antiguo 28-abr-2008, 05:23   #10 (permalink)
Colaborador
3pies tiene algunos puntos positivos de karma
 
Avatar de 3pies
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 1.798
Re: boton en excel para meter datos en otra hoja con un input box

De nada. Por aquí estaremos unos cuantos, dispuestos a ayudar en lo que sepamos.

Salu2
3pies está desconectado   Responder Citando
Antiguo 29-abr-2008, 14:29   #11 (permalink)
gmansi ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2005
Mensajes: 502
Re: boton en excel para meter datos en otra hoja con un input box

Cita:
Iniciado por kalaos7 Ver Mensaje
Esta sentencia me da error en el igual antes de concatenar : Hoja6.Range(=CONCATENAR("A3";M5)).Value = matricula, no se xk puede ser, muxas gracias
probaste sacando el signo de = ???
gmansi está desconectado   Responder Citando
Antiguo 29-abr-2008, 14:30   #12 (permalink)
gmansi ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2005
Mensajes: 502
Re: boton en excel para meter datos en otra hoja con un input box

Cita:
Iniciado por 3pies Ver Mensaje
De nada. Por aquí estaremos unos cuantos, dispuestos a ayudar en lo que sepamos.

Salu2
Y aprendemos de paso!

Tu solución está muy buena.

gmansi 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 02:53.


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