promotion image of download ymail app
Promoted

come mettere il tasto cerca in excel?

Ciao ragazzi, ho appena fatto una rubrica personale nel pc con excel 2007,dove,nel foglio1 ho messo tutte le lettere dell'alfabeto con i collegamenti ipertestuali,e negli altri fogli,tutte le lettere singole....(cioe' foglio2 lettera A,foglio3 lettera B,e cosi via....)

Ora volevo chiedere,e' possibile mettere nel foglio1(tutte le lettere) una casella che funzioni da "cerca"? cioe' come un motore di ricerca? in modo tale che basta digitarci dentro un nome e verifica se e' presente o no nella rubrica ed al limite cosi facendo capisco se devo aggiungerlo come nome.

Chi sarebbe disposto ad aiutarmi dicendomi passo passo come fare?

Aggiornamento:

Grazie zio Pino per l'interesse,il fatto che il filtro dati l'ho gia messo,e' con il VBA che non ci mastico tanto bene,quindi se riesci a fare qualcosa te con il VBA te ne sarei grato se me lo passi..e vedo che hai capito cosa volevo...Ah..se riesci a farlo per piacere spiegamelo per bene passo passo...GRAZIE ANCORA

1 risposta

Classificazione
  • 8 anni fa
    Risposta preferita

    Cancello tutto perché ho... risolto!

    Devi andare in Modalità progettazione e Strumenti di controllo, scegli 'Pulsante di comando' disegna un pulsante in un punto qualunque del Foglio poi basta un doppio click sul pulsante per entrare nell'editor di VBA, precisamente in:

    Private Sub CommandButton1_Click()

    End Sub

    copia la mia routine, seleziona tutto nell'editor e incolla la mia routine... pronto per la ricerca segnando il dato in D1, o nella cella scelta da te.

    Private Sub CommandButton1_Click()

    Dim s_Find As String

    Dim s_Found As String

    Dim s_Item As Long

    ' tutte le righe precedute dall'apice ['] non vengono processate

    ' sono da modificare, eventualmente, i riferimenti alle celle

    ' in questo caso il dato da cercare va inserito in D1 se la cella è

    ' diversa modificare [s_Find = Range("D1").Value] con la cella opportuna

    ' altro dato da modificare è [s_Item = 1] se non inizia dalla seconda riga

    ' come è da modificare [Range("A" & s_Item)] se la colonna dei nomi non è A

    ' inizializza le variabili

    ' posizione iniziale

    s_Item = 1

    ' dato da cercare

    s_Find = Range("D1").Value

    '

    ' inizio ciclo

      Do

    ' cerca il dato nella matrice indicata

    ' incrementa il contatore.

        s_Item = s_Item + 1

    ' comincia a cercare in A2

          s_Found = Range("A" & s_Item).Value

    ' se non lo trova

    ' e se la cella è vuota

            If s_Found = "" Then

    ' avverte

              MsgBox "Il dato cercato non esiste"

    ' al click su OK esce dalla subroutine

              Exit Sub

            End If

    ' se lo trova

            If s_Find = s_Found Then

    ' avverte

              MsgBox "Il dato cercato esiste"

    ' al click su OK evidenzia la cella che lo contiene

              s_Found = Range("A" & s_Item).Select

    ' ed esce dalla subroutine

              Exit Sub

            End If

    ' fine del loop

      Loop

    End Sub

    ziopino

    • Commenter avatarAccedi per rispondere alle risposte
Altre domande? Fai una domanda e ottieni le risposte che cerchi.