Disponibilità di magazzino
Hai un problema con Excel? 
Disponibilità di magazzino
di bcgeppo data: 07/05/2014 18:56:35
Buongiorno Forum, vorrei se fossi possibile un aiuto per realizzare un foglio che mi aiuti ad individuare la posizione fisica del materiale disponibile a magazzino, premetto che il materiale è classificato per misura (lunghezza x larghezza);
In allegato File "Provadisp01.xlsx" che aiuta a capire dove vorrei arrivare.
In pratica nel foglio magazzino è presente un database di pannelli disponibili a magazzino, mentre nel foglio distinta si trova la lista di pannelli a cui dovrei individuarne la posizione di magazzino indicata in colonna A, inoltre ci dovrebbe essere una tolleranza di +50 sulla misura (ad esempio se la richiesta è di 950x500 la risposta potrebbe essere una posizione che abbia misure tra 950x500 a 1000x550.
In allegato File "Provadisp01.xlsx" che aiuta a capire dove vorrei arrivare.
Grazie Salutoni
di Textomb data: 08/05/2014 09:06:32
ciao. Ho visto il tuo file.
Come te la cavi con le macro di excel?
In ogni caso credo sia fattibile anche senza. Ci vorrà un formulone ma lo ritengo fattibile.
Mi viene un dubbio interpretativo.
Se scrivo nella distinta un pannello di 1275 x 950 cosa deve restituire come posizione nel magazzino?
Se ho capito bene non dovrebbe dare alcuna disponibilità in quanto la tolleranza è solo in più (+50) e non in meno. Giusto?
di Grograman (utente non iscritto) data: 08/05/2014 09:34:17
Io sono un pò una capra con le formule quindi do un input in caso qualcuno passi in zona
Matriciale per controllare il valore che meno si scosta come "lunghezza" da una tolleranza di 50mm (mm vero?).
Ovviamente non è sufficiente perchè non controlla la larghezza
=INDICE(Magazzino!A1:A19;CONFRONTA(MIN(Magazzino!$C$1:$C$19<=(distinta!B2+50);Magazzino!$C$1:$C$19);Magazzino!C1:C19;0);1) |
di Grograman (utente non iscritto) data: 08/05/2014 09:36:41
Macchè non va nemmeno per la sola lunghezza....
Capra capra capra!
di ninai (utente non iscritto) data: 08/05/2014 10:10:37
Ciao
probabilmente l'ho "fatta lunga", ma così è venuta. Nell'ipotesi che solo una misura del foglio magazzino, corrisponda a tale condizioni (più piccole, più piccole per meno di 50 e che ambedue le misure sottostanno a tali criteri):
=INDICE(Magazzino!$A$2:$A$19;MATR.SOMMA.PRODOTTO((Magazzino!$C$2:$C$19>distinta!B2)*(Magazzino!$D$2:$D$19>distinta!C2)*((Magazzino!$C$2:$C$19-distinta!B2)<50)*((Magazzino!$D$2:$D$19-distinta!C2)<50)*(RIF.RIGA($A$2:$A$19)-1)))
da verificare
di Textomb data: 08/05/2014 10:49:33
@ninai
il serpentone mi pare corretto.
l'unico appunto:
nel caso di dimensioni fuori disponibilità il risultato di MATR.SOMMA.PRODOTTO è zero e quindi restituisce il primo valore dell'Elenco INDICE invece di un "NON DISPONIBILE". Il che è chiaramente fuorviante...
di ninai (utente non iscritto) data: 08/05/2014 10:58:02
sempre facendola lunga (oggi non riesco a sintetizzare):
=SE(MATR.SOMMA.PRODOTTO((Magazzino!$C$2:$C$19>distinta!B2)*(Magazzino!$D$2:$D$19>distinta!C2)*((Magazzino!$C$2:$C$19-distinta!B2)<50)*((Magazzino!$D$2:$D$19-distinta!C2)<50)*(RIF.RIGA($A$2:$A$19)-1));INDICE(Magazzino!$A$2:$A$19;MATR.SOMMA.PRODOTTO((Magazzino!$C$2:$C$19>distinta!B2)*(Magazzino!$D$2:$D$19>distinta!C2)*((Magazzino!$C$2:$C$19-distinta!B2)<50)*((Magazzino!$D$2:$D$19-distinta!C2)<50)*(RIF.RIGA($A$2:$A$19)-1)));"non disponibile")
di ninai (utente non iscritto) data: 08/05/2014 11:09:23
forse meglio questa MATRICIALE:
=SE.ERRORE(INDICE(Magazzino!$A$2:$A$19;PICCOLO(SE((Magazzino!$C$2:$C$19>distinta!$B2)*(Magazzino!$D$2:$D$19>distinta!$C2)*((Magazzino!$C$2:$C$19-distinta!$B2)<50)*((Magazzino!$D$2:$D$19-distinta!$C2)<50);RIF.RIGA($A$2:$A$19)-1);COLONNE($A$1:A$1)));"NB")
SE la trascini anche in più colonne a destra, ti restituisce eventuali altri misure che corrispondono a quelle misure
allego file
di bcgeppo data: 08/05/2014 17:32:49
Buongiorno forum, per rispondere a Textomb: con le macro non me la cavo benissimo;per quanto riguarda la tua interpretazione è corretta così come nel tuo esempio. La formula di ninai l'ho provata e sembra funzionare ora resta che provare ad operare ma credo che ci siamo.
Grazie 1K a tutti
di bcgeppo data: 08/05/2014 17:47:40
Mi correggo, entrambe non restituiscono sempre la risposta corretta, a meno che non sbagli quacosa io....
di bcgeppo data: 08/05/2014 18:42:44
La prima formula suggerita da Ninai Funziona a meno delle seguenti situazioni:
-Se la misura è alla pari la ignora;
-Se ci sono due misure nel range a magazzino restituisce "0"
La Seconda formula non funziona
Allego File con evidenze "Provadisp02.xlsx"
Grazie Ciao
di ninai (utente non iscritto) data: 08/05/2014 19:45:53
Ciao
invece, secondo me, è proprio la seconda formula quella giusta, hai trascurato il fatto che è MATRICIALE, pertanto va confermata con CTRL+MAIUSCOLO+INVIO, per il problema dei valori uguali, basta modificare il > in >= e il < in <=
diventa:
=SE.ERRORE(INDICE(Magazzino!$A$2:$A$19;PICCOLO(SE((Magazzino!$C$2:$C$19>=$B2)*(Magazzino!$D$2:$D$19>=$C2)*((Magazzino!$C$2:$C$19-$B2)<=50)*((Magazzino!$D$2:$D$19-$C2)<=50);RIF.RIGA($A$2:$A$19)-1);COLONNE($A$1:A$1)));"NB")
allego file
Provadisp02ninai
di Textomb data: 08/05/2014 20:08:13
Infatti. Come dice Ninai è proprio la seconda quella corretta.
Mi sono permesso di allegare il file proponendo nella formula la parametrizzazione della tolleranza in modo che si possa capire come variano le risposte al variare della tolleranza...
di bcgeppo data: 09/05/2014 19:09:20
Bè che dire, siete proprio grandi. Grazie 1K
Vuoi Approfondire?