Duda con macro en celda para su ejecucción

Mi idea es que en la hoja llamada "COMPONENTES" de la celda "q2" que tiene el texto "BUSQUEDA" al hacerle click me ejecute esta macro:

Call Macro1
'
' Macro1 Macro
'

'
Range("C9:AG2705").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("F2:I3"), Unique:=False
End If

End Sub

Soy principiante en esto de las macros así que no se nada del lenguaje y aprovechando si me podrían decir algún manual para entender mejor.

Respuesta
1

 H o l a:

La macro que pusiste no está completa, pero con el siguiente evento puedes ejecutar una macro cuando seleccionas la celda "Q2"

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
    If Target.Address(False, False) = "Q2" Then
        Call macro1
    End If
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(COMPONENTES)
  4. Del lado derecho copia la macro

otra vez yo, disculpa las molestias me a dado bastante bien, pero si lo quisiera como un hipervínculo?? quedaría igual???

¿A qué te refieres?

Que en la palabra búsqueda se haga el vinculo y ejecute  la macro 1, no se como explicarme tipo a esta macro que encontré:

Sub crearIndice()

'**************************************
'PASO 1: Crear o limpiar la hoja Indice
'**************************************
Dim hoja As Worksheet
On Error Resume Next
Set hoja = Worksheets("Indice")
On Error GoTo 0

If hoja Is Nothing Then
    'La hoja Indice no existe - Crearla en primera posición
    Worksheets.Add(Before:=Worksheets(1)).Name = "Indice"
Else
    'La hoja Indice ya existe - Limpiarla
    Worksheets("Indice").Cells.Clear
End If

'Insertar título a la hoja Indice
Worksheets("Indice").Range("A1").Value = "Indice"


'************************************************
'PASO 2: Recorrer las hojas creando hipervinculos
'************************************************
Dim fila As Long
Dim vinculoRegreso As String

fila = 2
'Celda donde se colocará el hipervinculo de regreso al indice
vinculoRegreso = "F1"

For Each hoja In Worksheets
    If hoja.Name <> "Indice" Then
        'Crear hipervinculo en hoja Indice
        With Worksheets("Indice")
            .Hyperlinks.Add Anchor:=.Cells(fila, 1), _
            Address:="", _
            SubAddress:="'" & hoja.Name & "'!A1", _
            TextToDisplay:=hoja.Name
        End With
        'Crear hipervinculo en hoja destino hacia Indice
        With hoja
            .Hyperlinks.Add Anchor:=.Range(vinculoRegreso), _
            Address:="", _
            SubAddress:="Indice!A1", _
            TextToDisplay:="Indice"
        End With
        fila = fila + 1
    End If
Next

End Sub

perdón por tantas molestias XD

Primero debes crear el hipervículo en la palabra "búsqueda", de la siguiente forma:

Escribe la palabra "búsqueda", por ejemplo en la celda D3.

Ahora selecciona la celda D3, Entra al menú Insertar, Hipervínculo, Lugar de este documento.

En Escriba la referencia de celda: D3

Aceptar


Ahora pon la siguiente macro en los eventos de tu hoja

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    macro1
End Sub

S a l u d o s

¡Gracias! Muchas gracias!!! ahora si quedo, saludos desde México y más sentido pésame para tu familia y para ti, gracias de nuevo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas