Agregar Boton personalizado

24/09/2005 - 08:49 por Mauro Jesús | Informe spam
Nuevamente acudo al foro en busca de ayuda..

Se puede agregar un botón personalizado al ejecutar una macro de un libro de
Excel ?

Necesito que en cada fila de captura, se despliegue una pequeña ventana
(opcional, o sea si el usuario desea verla) en la cual refleje cierta
información según los datos capturados en cada fila. quiero hacer que esa
ventana se muestre pulsando un botón (tal cual como se hace por ejemplo con
el botón combinar) y que este botón se encuentre en la barra superior. así
mismo quitar el botón cuando se cierre el libro.

Es posible hacer esto ?

De antemano agradezco sus comentarios.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
25/09/2005 - 01:54 | Informe spam
hola, Mauro !

... agregar un boton personalizado... que en cada fila de captura... despliegue una... ventana
(opcional... si el usuario desea verla) en la cual refleje cierta informacion segun los datos capturados en cada fila
... que esa ventana se muestre pulsando un boton (... como se hace por ejemplo con el boton combinar)
... que este boton se encuentre en la barra superior. asi mismo quitar el boton cuando se cierre el libro.



1) [creo que] asignar un boton personalizado a la barra [supongo que de herramientas] 'superior'...
-> quien te 'asegura' que 'esa' barra superior sea... la que estas pensando ? [son opciones de cada usuario/pc] :))
2) [te propongo] agrega un boton al menu 'contextual' que aparece al hacer un click-derecho en las celdas de excel ;)
-> [te aseguro que]... pocos usuarios 'se meten' con esa barra de comandos :))
3) como tampoco especificas cuales son ni la 'cierta informacion'... ni cuales son 'las filas'... ni... ??? :-(
la propuesta de al final del presente implica los siguientes 'supuestos'...
a) que el rango donde debera aparecer [p.e. un MsgBox] es 'B2:B10' [de la hoja donde pongas el codigo]
b) [creo que] los demas supuestos se veran 'reflejados' por si mismos :))

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

en el modulo de codigo del libro [ThisWorkbook] ==Private Sub Workbook_Open()
With Application.CommandBars("Cell").Controls.Add( _
msoControlButton, , , 1, True)
.Caption = "Info de captura..."
.OnAction = "EstaMacro"
.Visible = False
End With
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Cell").Reset
End Sub

en el modulo de codigo de 'esa' hoja ==Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Application.CommandBars("Cell").Controls("Info de captura...")
.Visible = Not Intersect(Target, Range("b2:b10")) Is Nothing
End With
End Sub

en un modulo de codigo 'normal' ==Option Private Module
Sub EstaMacro()
MsgBox "Esta es la informacion de captura..."
End Sub
Respuesta Responder a este mensaje
#2 Mauro Jesús
26/09/2005 - 14:14 | Informe spam
Gracias Héctor, voy a probar con lo que me sugieres y te aviso la
conclusión.

"Héctor Miguel" escribió en el mensaje
news:
hola, Mauro !

> ... agregar un boton personalizado... que en cada fila de captura...


despliegue una... ventana
> (opcional... si el usuario desea verla) en la cual refleje cierta


informacion segun los datos capturados en cada fila
> ... que esa ventana se muestre pulsando un boton (... como se hace por


ejemplo con el boton combinar)
> ... que este boton se encuentre en la barra superior. asi mismo quitar


el boton cuando se cierre el libro.

1) [creo que] asignar un boton personalizado a la barra [supongo que de


herramientas] 'superior'...
-> quien te 'asegura' que 'esa' barra superior sea... la que estas


pensando ? [son opciones de cada usuario/pc] :))
2) [te propongo] agrega un boton al menu 'contextual' que aparece al hacer


un click-derecho en las celdas de excel ;)
-> [te aseguro que]... pocos usuarios 'se meten' con esa barra de


comandos :))
3) como tampoco especificas cuales son ni la 'cierta informacion'... ni


cuales son 'las filas'... ni... ??? :-(
la propuesta de al final del presente implica los siguientes


'supuestos'...
a) que el rango donde debera aparecer [p.e. un MsgBox] es 'B2:B10' [de


la hoja donde pongas el codigo]
b) [creo que] los demas supuestos se veran 'reflejados' por si mismos


:))

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

en el modulo de codigo del libro [ThisWorkbook] ==> Private Sub Workbook_Open()
With Application.CommandBars("Cell").Controls.Add( _
msoControlButton, , , 1, True)
.Caption = "Info de captura..."
.OnAction = "EstaMacro"
.Visible = False
End With
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Cell").Reset
End Sub

en el modulo de codigo de 'esa' hoja ==> Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Application.CommandBars("Cell").Controls("Info de captura...")
.Visible = Not Intersect(Target, Range("b2:b10")) Is Nothing
End With
End Sub

en un modulo de codigo 'normal' ==> Option Private Module
Sub EstaMacro()
MsgBox "Esta es la informacion de captura..."
End Sub


Respuesta Responder a este mensaje
#3 Mauro Jesús
30/09/2005 - 13:45 | Informe spam
gracias Héctor, me sirve de maravilla



"Mauro Jesús" escribió en el mensaje
news:OU$$
Gracias Héctor, voy a probar con lo que me sugieres y te aviso la
conclusión.

"Héctor Miguel" escribió en el mensaje
news:
> hola, Mauro !
>
> > ... agregar un boton personalizado... que en cada fila de captura...
despliegue una... ventana
> > (opcional... si el usuario desea verla) en la cual refleje cierta
informacion segun los datos capturados en cada fila
> > ... que esa ventana se muestre pulsando un boton (... como se hace por
ejemplo con el boton combinar)
> > ... que este boton se encuentre en la barra superior. asi mismo quitar
el boton cuando se cierre el libro.
>
> 1) [creo que] asignar un boton personalizado a la barra [supongo que de
herramientas] 'superior'...
> -> quien te 'asegura' que 'esa' barra superior sea... la que estas
pensando ? [son opciones de cada usuario/pc] :))
> 2) [te propongo] agrega un boton al menu 'contextual' que aparece al


hacer
un click-derecho en las celdas de excel ;)
> -> [te aseguro que]... pocos usuarios 'se meten' con esa barra de
comandos :))
> 3) como tampoco especificas cuales son ni la 'cierta informacion'... ni
cuales son 'las filas'... ni... ??? :-(
> la propuesta de al final del presente implica los siguientes
'supuestos'...
> a) que el rango donde debera aparecer [p.e. un MsgBox] es 'B2:B10'


[de
la hoja donde pongas el codigo]
> b) [creo que] los demas supuestos se veran 'reflejados' por si


mismos
:))
>
> si cualquier duda [o informacion adicional]... comentas ?
> saludos,
> hector.
>
> en el modulo de codigo del libro [ThisWorkbook] ==> > Private Sub Workbook_Open()
> With Application.CommandBars("Cell").Controls.Add( _
> msoControlButton, , , 1, True)
> .Caption = "Info de captura..."
> .OnAction = "EstaMacro"
> .Visible = False
> End With
> End Sub
> Private Sub Workbook_BeforeClose(Cancel As Boolean)
> Application.CommandBars("Cell").Reset
> End Sub
>
> en el modulo de codigo de 'esa' hoja ==> > Private Sub Worksheet_SelectionChange(ByVal Target As Range)
> With Application.CommandBars("Cell").Controls("Info de captura...")
> .Visible = Not Intersect(Target, Range("b2:b10")) Is Nothing
> End With
> End Sub
>
> en un modulo de codigo 'normal' ==> > Option Private Module
> Sub EstaMacro()
> MsgBox "Esta es la informacion de captura..."
> End Sub
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida