|
Rank: AiutAmico
Iscritto dal : 6/28/2005 Posts: 58
|
Salve, ho una tabella excel dove in una colonna sono riportati dei nominativi. Andando dal menù Modifica>Trova si apre una finestra dove si digitando il nominativo è possibile trovarlo nell'apposita colonna. Vorrei realizzare un pulsante che realizzasse la stessa cosa , evitando quindi di andare dalla barra dei menu- Ho provato con "registra macro" ma senza risultato. C'è qualche altro sistema per abbinare ad un pulsante la funzione in oggetto ?
Saluti Giuseppe
|
|
|
|
|
Rank: Member
Iscritto dal : 2/17/2006 Posts: 24
|
Se ho capito il tuo quesito prova nel seguente modo: posizionati sulla linguetta dei nominativi, quindi: dalla barra in alto: DATI; FILTRO; FILTRO AUTOMATICO. Ciao Danilo
|
|
Rank: AiutAmico
Iscritto dal : 6/28/2005 Posts: 58
|
Notevole come funzione: non la conoscevo! Tuttavia non era questo che volevo raggiungere. Il problema è quello di giungere al filtro (o anche Trova) tramite un pulsante da situare sul folgio di lavoro, anzicchè andare dalla barra dei menù.
Ti ringrazio comunque per avermi fatto scoprire quest'altra funzione. Ciao Giuseppe
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve una macro veloce veloce da associare ad un pulsante può essere questa: Sub cerca() On Error Resume Next inpt = InputBox("valore da cercare") col = InputBox("in quale colonna cercare") Range(col & 1).Select Cells.Find(What:=inpt, After:=ActiveCell, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _ False).Activate End Sub La macro ti chiederà cosa cercare e in che colonna cercare. Tieni conto che il valore da cercare è sensibile alle maiuscole/minuscole, se vuoi togliere la sensibilità cambia MatchCase:=False in MatchCase:=True saluti Andrea
|
|
Rank: AiutAmico
Iscritto dal : 6/28/2005 Posts: 58
|
Ho provato a realizzare la macro abbinata ad un pulsante: era quello che cercavo. Ho notato che se nell'elenco ci sono due persone con lo stesso nome e cognome la ricerca si ferma sul primo non avvisandomi della presenza del secondo nominativo.
Ti ringrazio saluti Giuseppe
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
salve se vuoi scorrere tutta la colonna bisogna che usi l'istruzione Findnext. Modifica la macro come segue: Sub cerca() inpt = InputBox("valore da cercare") col = InputBox("in quale colonna cercare") Range(col & 1).Select With Columns("b:B") Set c = .Find(inpt, After:=ActiveCell, LookIn:=xlValues) x = 1 If Not c Is Nothing Then firstAddress = c.Address Do c.Select MsgBox ("trovato" & x) Set c = .FindNext(c) x = x + 1 Loop While Not c Is Nothing And c.Address () firstAddress End If End With End Sub saluti Andrea
|
|
Rank: AiutAmico
Iscritto dal : 6/28/2005 Posts: 58
|
Ciao, ho provato ha lanciare la nuova macro ma compare il seguente msg di errore: errore di compilazione. Rilevato nome non univoco: cerca e la riga della macro Loop While Not c Is Nothing And c.Address () firstAddress diventa rossa. Non ho fatto altro che copiare la nuova macro e incollarla al posto dell'altra .
Saluti giuseppe
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
<BLOCKQUOTE id=quote><font size=1 face="Sans Serif, Arial, Helvetica" id=quote>quote:<hr height=1 noshade id=quote> Rilevato nome non univoco: cerca e la riga della macro Loop While Not c Is Nothing And c.Address () firstAddress diventa rossa. Non ho fatto altro che copiare la nuova macro e incollarla al posto dell'altra . <hr height=1 noshade id=quote></BLOCKQUOTE id=quote></font id=quote><font face="Sans Serif, Arial, Helvetica" size=2 id=quote> salve La cosa succede perchè come già rilevato più volte in questi post i simboli di maggiore e minore vengono trasformati in parentesi tonde. Loop While Not c Is Nothing And c.Address <font color=red>() </font id=red> firstAddress le due parentesi in rosso sono in effetti i simboli di maggiore/minore saluti Andrea
|
|
Rank: AiutAmico
Iscritto dal : 6/28/2005 Posts: 58
|
Ciao, ti ringrazio tutti risolto. Non ci sarei mai arrivato.....
Grazie ancora Ciao
|
|
Guest |