Condividi:        

Excel - selezionare voce elenco e ottenere dati relativi

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Excel - selezionare voce elenco e ottenere dati relativi

Postdi sasy89 » 27/09/12 18:27

Salve a tutti mi sono appena iscritto e innanzitutto vi faccio i complimenti per il forum spesso trovo soluzioni ai miei problemi :D ma questa volta purtroppo non ho trovato nulla che mi potesse aiutare :(

Vi espongo il problema:

ho due fogli di lavoro, sul primo c'è l'archivio delle partite giocate con i risultati e sul secondo foglio un un elenco di campionati di calcio (precisamente in B2). Quello che vorrei ottenere è che selezionando una voce dall'elenco, tipo SERIE A, excel cerchi tutte le partite che nella colonna competizione del primo foglio hanno SERIE A e mi restituisca tutte quelle partite. Possiamo paragonarlo ad una spece di filtro che mi mostra le partite della competizione che seleziono.

PS: ho le versioni 2003 e 2007

Grazie a tutti per l'aiuto
sasy89
Utente Junior
 
Post: 14
Iscritto il: 27/09/12 18:14

Sponsor
 

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi sasy89 » 27/09/12 18:38

Moderatori scusate ma ho sbagliato sezione potete spostare il topic in applicazioni office windows?
grazie e scusate per la disattenzione
sasy89
Utente Junior
 
Post: 14
Iscritto il: 27/09/12 18:14

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi gahan » 27/09/12 22:27

Detto, fatto :)

Ciao e benvenuto. Non preoccuparti, tutti possono sbagliare.

Buona permanenza.
words like violence, break the silence
Avatar utente
gahan
Moderatore
 
Post: 1397
Iscritto il: 23/01/08 16:09

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi Sasyjoe » 27/09/12 22:46

Puoi allegare il file?

Ciao
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi Anthony47 » 28/09/12 00:01

Ciao sasy, benvenuto anche da parte mia.
Abbiamo affrontato molte volte la richiesta di un filtro automatico che si esegue al cambiamento di una cella (quella in cui fai la scelta di quale campionato selezionare, quindi B2 di Foglio2).
Vedi ad esempio
viewtopic.php?f=26&t=84789
viewtopic.php?f=26&t=88262
viewtopic.php?f=26&t=85162

Vedi se con quanto proposto riesci a comporre una macro di filtro che si attiva al cambiamento di Foglio2-B2 e che usa il filtro scelto in B2.
Se non ci riesci allora registra una macro mentre:
-applichi il filtro automatico sulla colonna che contiene l' elenco dei campionati
-filtri per un valore qualsiasi a tua scelta
-copi l' intervallo che ti interessa
-lo incolli dove vuoi l' elenco
Poi pubblica il codice ottenuto insieme a un file di esempio e vedremo di modificarlo insieme in modo da far scattare questa operazione tutte le volte he imposti in Foglio2-B2 un valore da filtrare.

Ciao, fai sapere.
Avatar utente
Anthony47
Moderatore
 
Post: 19439
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi sasy89 » 28/09/12 11:11

Grazie mille anthony,ho seguito le tue istruzioni ma quando clicco sul pulsante che ho creato non mi restituisce nessun risultato e la prima volta che aggiorno mi dà errore 1004
ho caricato il file su RS magari guardandolo capisci meglio cosa intendo fare :D
https://rapidshare.com/files/1811258316 ... 0macro.xls
sasy89
Utente Junior
 
Post: 14
Iscritto il: 27/09/12 18:14

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi Flash30005 » 28/09/12 14:13

Ciao Sasi89 e benvenuto nel Forum

prova questo file

penso che debba inserire delle righe se vuoi filtrarle :D

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi wallace&gromit » 28/09/12 14:27

Ciao Sasy,
prima vedi la soluzione di Flash, magari sei già a posto,
comunque contemporaneamente io ho trovato quest'altra soluzione, più arzigogolata (ma è il massimo che so fare al momento!) ma con il vantaggio che non devi copiare i dati da archivio a X campionati come ha fatto flash.
La macro è questa:
Codice: Seleziona tutto
Sub filtro()
'
' filtro Macro
' Macro registrata il 28/09/2012 da info
'
MioFiltro = "=" & Worksheets("X Campionati").Range("B2").Value & "*"
Application.ScreenUpdating = False
Worksheets("Archivio").Select
    Selection.AutoFilter Field:=4, Criteria1:=MioFiltro, Operator:=xlAnd
            FinalRow = Cells(Rows.Count, 2).End(xlUp).Row
            CopyArea = "B4:D" & FinalRow & ", F4:K" & FinalRow
    Range(CopyArea).Copy Destination:=Worksheets("X Campionati").Range("B4")
Worksheets("X Campionati").Select

End Sub

Però faccio notare due punti:
- devi togliere le righe vuote in archivio (questo l'ha già detto Flash)
- se fai una ricerca con "Svizzera" ottieni sia le partite di "Svizzera" che quelle di "Svizzera 2"
consiglio di rinominare i campionati in modo più univoco (per es: SvizzeraSuperLeague e SvizzeraChallangeLeague)
Office2016 + 2019 su win11
Avatar utente
wallace&gromit
Utente Senior
 
Post: 2180
Iscritto il: 16/01/12 14:21

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi wallace&gromit » 28/09/12 17:08

Ho trovato un bug: la mia macro precedente non cancellava i risultati prima di riscrivere quelli nuovi, così invece funziona:
Codice: Seleziona tutto
Sub filtro()
'
' filtro Macro
' Macro registrata il 28/09/2012 da info
'
MioFiltro = "=" & Worksheets("X Campionati").Range("B2").Value & "*"
Application.ScreenUpdating = False
Worksheets("X Campionati").Select
FinalRow = Cells(Rows.Count, 2).End(xlUp).Row
ClearArea = "B4:J" & FinalRow
Range(ClearArea).Clear
Worksheets("Archivio").Select
    Selection.AutoFilter Field:=4, Criteria1:=MioFiltro, Operator:=xlAnd
            FinalRow2 = Cells(Rows.Count, 2).End(xlUp).Row
            CopyArea = "B4:D" & FinalRow2 & ", F4:K" & FinalRow2
    Range(CopyArea).Copy Destination:=Worksheets("X Campionati").Range("B4")
Worksheets("X Campionati").Select

End Sub
Office2016 + 2019 su win11
Avatar utente
wallace&gromit
Utente Senior
 
Post: 2180
Iscritto il: 16/01/12 14:21

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi sasy89 » 28/09/12 18:10

Grazie siete stati davvero gentilissimi.
Alla fine ho optato per la macro di Flash, come unica pecca c'è il fatto che selezionando il campionato maggiore (BUNDESLIGA, SVEZIA..) escono anche BUNDESLIGA 2, SVEZIA 2 ma ho risolto rinominando i campionati maggiori BUNDESLIGA_1, SVEZIA_1 e quelli minori BUNDESLIGA_2, SVEZIA_2 :D quindi funziona tutto alla perfezione :D
sasy89
Utente Junior
 
Post: 14
Iscritto il: 27/09/12 18:14

Re: Excel - selezionare voce elenco e ottenere dati relativi

Postdi Flash30005 » 28/09/12 20:21

Visto che hai un elenco preciso delle Squadre è sufficiente che tu tolga l'asterisco in MioFiltro
che, nel tuo caso, non occorre
in pratica così
Codice: Seleziona tutto
Sub filtro()
    Range("B3:K3").AutoFilter
    MioFiltro = "=" & Range("B2").Value
    Range("E3").Select
    Selection.AutoFilter
 Selection.AutoFilter Field:=4, Criteria1:=MioFiltro, Operator:=xlAnd
End Sub


ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-


Torna a Applicazioni Office Windows


Topic correlati a "Excel - selezionare voce elenco e ottenere dati relativi":


Chi c’è in linea

Visitano il forum: Nessuno e 11 ospiti