Necesito asignar a un boton Active X un macro que abra un formular

19/11/2004 - 15:49 por Jorge de Panamá | Informe spam
Hola, he estado manejando información en una hoja de cálculo de Excel. El
único problema es que se me ha vuelto bastante tedioso tener que escribir
esta información en la misma hoja de cálculo. Se me ocurrio la idea de
asignar un boton active X a la hoja asi cuando sea que quisiera agregar
información solo tendría que presionar le botón y el macro asignado me
abriría el formulario.

El macro que tengo grabado es el siguiente:
Sub Macro6()
'
Range("A9").Select
ActiveSheet.ShowDataForm
End Sub

El problema es: cuando presiono sobre el botón me aparece un mensaje de
error que lee
Run time error ´1004´
ShowDataForm method of Worksheet class Failed

Alguien me podría ayudar para que el macro me abrá el formulario y no me
aparezca el mensaje de error?

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
20/11/2004 - 01:41 | Informe spam
hola, Jorge !

Mostrar la cita
-> cuando 'pretendes' mostrar el formulario de una hoja [datos / formulario...] ->por codigo<-...
excel 'trata' de encontrar un nombre de rango que haga referencia a la 'base de datos'...
o [si no lo encuentra]... 'busca' en la hoja ->a partir del rango 'A1'<-

las 'alternativa' [que veo] para que 'funcione SIN errores' el formulario de datos por codigo, son...
o... MOVER la base de datos para que inicie en 'A1'
o... usar un objeto 'commandbar' [simulando la ejecucion de: -menu- datos / formulario...]
[obviamente, la hoja 'activa' DEBE ser la 'correcta Y la celda 'activa' estar dentro de la base de datos]

1.- si te 'decides' por mover la base de datos a 'A1'...
podrias 'presentar' el formulario ->de cualquier hoja<- [si existe] DESDE cualquiera otra como 'activa' [p.e.]
si estas en hoja2 y quieres mostrar el formulario de hoja1...
Worksheets("Hoja1").ShowDataForm

2.- si 'prefieres/necesitas' DEJAR la base de datos 'donde esta'... ['tendras que']...
-> activar la hoja Y una celda 'apropiadas' y...
-> ejecutar el comando [datos / formulario...] ->por codigo<- +/- como sigue...
Worksheets("Hoja1").Select
Range("a9").Select
Application.CommandBars.FindControl(Id:†0).Execute

encontraras la explicacion de este 'comportamiento' en la siguiente pagina...
http://support.microsoft.com/defaul...es;e110462
El metodo ShowDataForm provoca un fallo si no se encuentran datos
[traduccion automatica al español]

saludos,
hector.
#2 Héctor Miguel
20/11/2004 - 04:43 | Informe spam
hola, Luis !

Mostrar la cita
solo un comentario [aunque estoy seguro que Jorge ya lo ha 'probado' de manera 'similar']...
=> si la 'base de datos' [en tu hoja3] NO 'inicia' en 'A1' [como es el caso que plantea Jorge]...
el metodo 'ShowDataForm'... [ya sea en modulos de eventos o en modulos 'normales']
[simplemente]... 'falla' [por las 'razones' expuestas en la respuesta anterior]

saludos,
hector.
#3 Luis
21/11/2004 - 12:30 | Informe spam
Héctor, tienes razón, si se dejan columnas vacías a la izquierda, no
funciona porque Excel asume que se asemeja a una base de datos donde no hay
campos vacíos.

Un saludo

Luis Medina



"Héctor Miguel" escribió en el mensaje
news:O$
Mostrar la cita
revisa el codigo
Mostrar la cita
manera 'similar']...
Mostrar la cita
caso que plantea Jorge]...
Mostrar la cita
modulos 'normales']
Mostrar la cita
anterior]
Mostrar la cita
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.796 / Virus Database: 540 - Release Date: 13/11/2004
#4 Héctor Miguel
21/11/2004 - 18:38 | Informe spam
hola, Luis !

solo un comentario 'final' [en relacion con el adjunto que agregaste al mensaje] :(
el postor original [Jorge] realizo la consulta por [alg]una interfase web de los grupos de dscusion...
si observas su direccion ['de respuesta']... 'dice'... ''
que por diseño NO 'aceptan' adjuntos NI formatos HTML en los mensajes
y [si continua de esa forma]... NO podra descargar los archivos adjuntos a las respuestas :\
puedes 'hacer la prueba' si visitas los grupos por alguna de las direcciones siguientes...
http://tinyurl.com/5jnmy
http://tinyurl.com/459wk

saludos,
hector.
Ads by Google
Search Busqueda sugerida