Menu Emergente

Hola Estimada Elsa
Saludos.
Por favor me puedes indicar el código para un menú emergente que tenga para cada celda cinco opciones de introducir texto. Gracias por tu ayuda nuevamente. Saludos cordiales. Alberto

1 respuesta

Respuesta
1
Interpreto que estás necesitando que las celdas tengan una lista desplegable donde puedan optar por 5 textos.
Si es así tendrás en algún lugar una lista con esos 5 textos.
Ahora en la primer celda donde quieras que te aparezcan las opciones, vas a menú Datos, Validación, en Permitir elegí Lista y estando en Origen, seleccioná las celdas de la lista que creaste.
Fíjate las otras opciones y aceptá. Ahora arrastrá esta celda (como cuando arrastrás ´fórmulas) al resto de las celdas.
Si esto no es lo que estas necesitando, me volvés a contactar.
Estimada Elsa. Saludos.
Elsa. Lo que necesito conocer es como crear un menu emergente o contextual, el cual, estando sobre una hoja de cálculo se despliegue al clicar con el botón derecho del Mouse.Si me puedes ayudar gracias. Saludos. Alberto
Disculpa, ¿mi método de lectura veloz está fallando? Jejejeje.
En un módulo tendrás que cargar la rutina y luego que la ejecutes podrás asignar al evento BeforeRightClick de la Hoja, lo que sigue:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
CommandBars("MiMenu").ShowPopup
End Sub
Si lo querrás para todas las hojas de este libro buscarás el objeto ThisWorkbook eligiendo el evento: Workbook_SheetBeforeRightClick
Y ahora esto en un módulo:
Option Explicit
Sub Create_Custom_PopUp()
Dim myBar As Object
'primero borra algun otro menú de ese nombre si hubiese
On Error Resume Next
CommandBars("MiMenu").Delete
On Error GoTo 0
'crea un nuevo menú declarándolo Temporal, es solo para este libro.
Set myBar = CommandBars.Add(Name:="MiMenu", _
Position:=msoBarPopup, Temporary:=False)
'le agrego 2 opciones
With myBar
.Controls.Add Type:=msoControlButton
.Controls.Add Type:=msoControlButton
End With
'le asigno el nombre a esas opciones y las acciones
With myBar
.Controls(1).Caption = "Copiando"
.Controls(2).Caption = "Pegando"
'las acciones tienen que estar creadas en rutinas aparte
.Controls(1).OnAction = "Micopia"
.Controls(2).OnAction = "Mipegado"
End With
End Sub
?y aquí las rutinas mencionadas
Sub Micopia()
Selection.Copy
End Sub
Sub Mipegado()
ActiveSheet.Paste
End Sub
Valió la pena esperar, ¿verdad?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas