View Full Version : Chi conosce bene EXCEL?
fmasta56
23-04-2009, 09:41
Ho un problemino da ridere con EXCEL, ma non riesco (ormai da anni) a risolverlo! In una cartella ho due fogli, uno si chiana OGGETTI e contiene su ogni riga i dati identificativi dei miei articoli, l'altro si chiama ORDINI e contiene su ogni riga i dati relativi al cliente (immessi manualmente) e gli articoli ordinati. Io voglio che, digitando nella prima cella di ogni riga in ORDINI il codice articolo, mi vengano riportati nelle celle a fianco (in quelle dove c'è la formula giusta) i dati relativi, presi dal foglio OGGETTI. Poichè però gli articoli hanno un codice alfanumerico progressivo ma diverso per categoria, e alcune righe sono appositamente lasciate vuote per l'introduzione di nuovi articoli, non si riesce ad ottenere questo risultato: per ora ci riesco solamente riportando un numero (questo sì progressivo, ed esistente nel foglio OGGETTI nella prima colonna creata apposta) dal foglio OGGETTI che mi individua l'articolo. Purtroppo rende tutta la procedura molto più lunga, in quanto bisogna prima cercarsi nel foglio OGGETTI l'articolo per avere il numero univoco corrispondente...qualche aiuto? La formula che utilizzo è:
=SE($A90=0;"";CERCA($A90;OGGETTI!$A$5:$A$17049;OGGETTI!$N$5:$N$17049))
dove nella colonna A ci sono i numeri di individuazione articolo, nella colonna N la descrizione dell'articolo (e così per altre colonne limitrofe).
Posso inviare un file di prova a chi mi può aiutare, grazie.:mc: :mc: :muro:
Utilizzando la funzione CERCA.VERT() in maniera appropriata, non è necessario avere i dati disposti secondo alcun ordine ed anche le celle vuote non influiscono sul risultato.
Nel tuo caso, supponendo che i codici prodotto siano in colonna B del foglio OGGETTI e che nella colonna A del foglio ORDINI inserisca, anzichè il progressivo, il codice dell'articolo, la formula dovrebbe essere:
=SE($A90=0;"";CERCA.VERT($A90;OGGETTI!$B$5:$B$17049;13;FALSO)
Ciao
fmasta56
23-04-2009, 11:33
Utilizzando la funzione CERCA.VERT() in maniera appropriata, non è necessario avere i dati disposti secondo alcun ordine ed anche le celle vuote non influiscono sul risultato.
Nel tuo caso, supponendo che i codici prodotto siano in colonna B del foglio OGGETTI e che nella colonna A del foglio ORDINI inserisca, anzichè il progressivo, il codice dell'articolo, la formula dovrebbe essere:
=SE($A90=0;"";CERCA.VERT($A90;OGGETTI!$B$5:$B$17049;13;FALSO)
Ciao
Ci sto provando, ma cos'è quel 13 prima di FALSO?
Ti chiedo scusa ho sbagliato un riferimento nella formula:
=SE($A90=0;"";CERCA.VERT($A90;OGGETTI!$B$5:$N$17049;13;FALSO)
quel 13 indica in che posizione si trova il risultato da restituire B=1, C=2,...,N=13
Spero di aver contato bene.
Ciao
fmasta56
23-04-2009, 15:05
Ti chiedo scusa ho sbagliato un riferimento nella formula:
=SE($A90=0;"";CERCA.VERT($A90;OGGETTI!$B$5:$N$17049;13;FALSO)
quel 13 indica in che posizione si trova il risultato da restituire B=1, C=2,...,N=13
Spero di aver contato bene.
Ciao
Ah, ecco perchè! Dopo opportune prove (manca anche la parentesi di chiusura, nella tua formula, ma l'ha corretta in automatico Excel), verifiche e controverifiche (ovviamente ho dovuto adattare la formula a tutte le colonne che mi interessavano, il foglio è molto complesso, qualcosa come 9000 righe e una cinquantina di colonne...) posso assicurarti che funziona...SEI UN GRANDE, ci siamo scervellati parecchio e in parecchi su questa maledetta cartella!!!!
GRAZIE MILLISSIME, spero che, dovessi aver ancora bisogno, mi risponderai tu...a risentirci :D :D :D
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.