Condividi:        

Cercare valori selezionando più variabili

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

Cercare valori selezionando più variabili

Postdi Marco75CT » 09/08/11 07:17

Ciao Forum!
in questa calda e afosa mattina di agosto mi pongo e vi rivolgo una domanda.
Ammettiamo che io abbia un file excel con una serie di fogli "Valori1, Valori2,..." e un foglio "Ricerca"
Nei fogli "ValoriX" nella colonna A a partire dalla riga 2 una serie di date sequenziali in ordine crescente, nella riga 1 a partire dalla colonna B una serie di date sequenziali in ordine crescente, nella colonna B a partire dalla riga 2 una serie di valori. Ogni giorno i valori vengono scritti a partire dalla colonna e dalla riga successiva al giorno prima.
Domanda: è possibile mettendo nel foglio "Ricerca" 3 paramentri, ricercare nei vari fogli "ValoriX" i relativi valori?
Esempio
Anno: 2011
Mese: Settembre
Foglio: Valori1

Deve restituire nella riga selezionata i valori corrispondenti alla colonna specifica.

Grazie e buon agosto a tutti!
Marco75CT
Utente Senior
 
Post: 146
Iscritto il: 05/08/11 11:54

Sponsor
 

Re: Cercare valori selezionando più variabili

Postdi Flash30005 » 09/08/11 08:55

qualcosa del genere?

(vi siete, per caso, messi d'accordo?) :D
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: Cercare valori selezionando più variabili

Postdi Marco75CT » 09/08/11 11:23

Hola Flash30005!
Può darsi di si! :P
Ho provato ad applicare la macro al mio foglio, ma non funziona!
Anche perchè nel frattempo l'ho un po' modificato, per adattarlo meglio alle mie esigenze.
Ti invio il foglio allegato così gli dai un occhio?
http://www.mediafire.com/file/a3slqhz4c1dws7z/Analisi%20Competitors.xls
Grazie
Marco75CT
Utente Senior
 
Post: 146
Iscritto il: 05/08/11 11:54

Re: Cercare valori selezionando più variabili

Postdi Anthony47 » 09/08/11 13:38

Se vuoi puoi farlo con formule:
In B8 riporti la data di inizio; in C8 usi la formula
Codice: Seleziona tutto
=SE(E(B8<$B$7;B8>0);B8+1;"")
e copi verso dx per le colonne max che pensi di dover esaminare
In B9 usi la formula
Codice: Seleziona tutto
 =SE(E($A9<>"";B$8<>"");INDICE(INDIRETTO($A9&"!A1:IV10000");CONFRONTA(B$8;INDIRETTO($A9&"!A1:A10000");0);CONFRONTA($B$5;INDIRETTO($A9&"!A1:IV1");0));"")

Copi B9 verso dx per le stesse colonne su cui hai predisposto la data; poi copi la prima riga di formule verso il basso.
Invece di "Oggi" la colonna viene scelta sulla base del contenuto della cella B5; eventualmente in B5 metti il calcolo di "Oggi".
La formula principale lavora su max 255 colonne e 10000 righe; se sono troppe o poche, modifica di conseguenza.

Ovviamente l' uso della macro rende il foglio meno esigente in termini di memoria e di uso della cpu, quindi se le colonne & righe sono tante quella soluzione e' altamente preferibile.

Ciao a tutti.
Avatar utente
Anthony47
Moderatore
 
Post: 19217
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Cercare valori selezionando più variabili

Postdi Flash30005 » 09/08/11 15:18

Leggi il post di Anthony qui sopra.

Per quanto riguarda la macro bisognava adattarla facendo modifiche più "drastiche"
Riporto la macro adatta alla tua disposizione dati
Codice: Seleziona tutto
Sub TrovaValori()
    Dim Ws1, Ws2 As Worksheet
    Set Ws2 = Worksheets("Competitors Analisys")
    UR2 = Ws2.Range("A" & Rows.Count).End(xlUp).Row
    UC2 = Ws2.Range("IV8").End(xlToLeft).Column
    Ws2.Range(Cells(8, 2), Cells(UR2, UC2)).ClearContents
    DataI = Ws2.Range("B6").Value
    DataF = Ws2.Range("B7").Value
    Application.ScreenUpdating = False
    Application.Calculation = xlManual
    ColA = 1
    For CC2 = DataI To DataF
    ColA = ColA + 1
    Ws2.Cells(8, ColA).Value = CC2
    Next CC2
    For RR2 = 9 To UR2
        Set Ws1 = Worksheets(Ws2.Range("A" & RR2).Value)
            UR1 = Ws1.Range("A" & Rows.Count).End(xlUp).Row
            For RR1 = 2 To UR1
                ColA = 1
                For CC2 = DataI To DataF
                ColA = ColA + 1
                If Ws1.Range("A" & RR1).Value = CC2 Then
                    Ws2.Cells(RR2, ColA).Value = Ws1.Range("B" & RR1).Value
                End If
                Next CC2
            Next RR1
    Next RR2
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True
    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-

Re: Cercare valori selezionando più variabili

Postdi Marco75CT » 09/08/11 16:00

Grazie Anthony47 e Flash30005.
Ho utilizzato le formule di Anthony47 e funziona perfettamente.
Proverò anche con la tua Macro Flash30005.
Siete grandi!
Marco75CT
Utente Senior
 
Post: 146
Iscritto il: 05/08/11 11:54


Torna a Applicazioni Office Windows


Topic correlati a "Cercare valori selezionando più variabili":


Chi c’è in linea

Visitano il forum: Nessuno e 17 ospiti

cron