Calcolo domanda - offerta

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
luca050284
00sabato 9 febbraio 2019 17:14
Ciao a tutti,

Avrei bisogno di ricreare qualcosa come da allegato

L'idea sarebbe di realizzare un prospetto dove per ogni settimana trovo il calcolo tra gli ordini di lavoro (che sottraggono giacenza) e gli ordini di acquisto che aggiungono giacenza. Mi serve per capire quando vado in negativo.

I dati sono aggregati in una pivot (col- A-F) , dove trovate articolo, range week , giacenza, tipo ordine, totale (corrisponde alla qtà di ogni odl e oda) .
Quello che ho realizzato con matrice somma prodotto (dalla col K in poi ) è per riga articolo e calcola per week gli odl e gli oda separatamente; quello però che mi servirebbe e ottenere il RISULTATO in un unica riga. E' possibile farlo con la matrice?

NB: Ho riportato anche una nota nell'allegato , in quanto nelle celle che evidenzio in verde, viene fatto un calcolo che non sono riuscito appunto a riprodurre in un unica riga che è : giacenza - odl + oda = nuova giacenza ; questo viene fatto al primo calcolo; successivamente nuova giacenza - odl + oda = nuova giacenza 1...e così via.

Grazie in anticipo
DANILOFIORINI
00domenica 10 febbraio 2019 09:30
Buongiorno
almeno per me non è chiaro se vuoi una formula unica per ripetere quello che hai fatto con le tue formule o se bisogna ottenere un altro tipo di output quindi se puoi riallega il file senza formule inserite ma con il risultato da ottenere scritto a mano spiegando come ci arrivi (come se lo dovessi fare con carta e penna)....in attesa un saluto
luca050284
00domenica 10 febbraio 2019 16:17
Salve,

si vorrei una formula unica , che sarebbe quella riportata in "risultato", ossia una formula che per ogni settimana sottrae e somma alla nuova giacenza, per capire quando vado in negativo (se ci vado) . Il fatto è che ci sono arrivato facendo i differenti calcoli mostrati (con differenti matrici, come dicevo, ho sommato le qtà rispettivamente degli odl e degli oda). Ho inserito le formule pensando di essere più chiaro nell'output che mi serviva.

In poche parole...come faccio ad ottenere una tabella come quella mostrata...che fa il calcolo (risultato)...

grazie
DANILOFIORINI
00domenica 10 febbraio 2019 20:06
Buonasera
utilizzo una colonna di servizio la K in K2 da trascinare in basso

=SE.ERRORE(INDICE($C$2:$C$39;CONFRONTA(1;INDICE(($A$2:$A$39=$J2)*($D$2:$D$39=$I2);;);0));CERCA(2;1/($K$1:K1<>"");$K$1:K1))

in L4 da trascinare a destra

=K4-L2+L3

in L7 d trascinare a destra

=K7-L5+L6
luca050284
00lunedì 11 febbraio 2019 12:18
Buongiorno,

Eh! Si,! diciamo che a parte la colonna K , che è la giacenza che mancava. Il resto rispetto al file che avevo inserito non è diverso..mi sembra o Forse mi sono espresso male ..

Week 1...... week N
Codice 1. Risultato Risultato
Codice 2

Vorrei una cosa come sopra ..perché la tabella è fatta a mano... cioè copio e traspongo le colonne week...elimino tutti i codici duplicati. Poi ripeto i codici 2 volte. Dopodiché parto con la matrice per gli odl e poi quella per gli oda...e ogni volta copia e incolla la formula per ogni riga...poi stesso lavoro con il "risultato.." se avessi tutto il conto su un "risultato"...non avrei necessità di creare 3 righe per ogni codice ..
dodo47
00lunedì 11 febbraio 2019 12:56
ciao
il problema grosso è quello della giacenza iniziale che sta nella col C e, quindi, nella formula non è trascinabile.

Se ti accontenti, ma da provare molto bene, vedi l'allegato che usa un trucchetto iniziale per capire se la giacenza va presa da col C oppure dalla cella precedente.
Ho preferito non ricalcolare la giacenza precedente, prendendola direttamente dalla cella affianco, in quanto la formula sarebbe diventata più chilometrica di quello che è già.

saluti



DANILOFIORINI
00lunedì 11 febbraio 2019 16:01
Buonasera a tutti
@luca io mi sono limitato a rendere operativa la tua richiesta di ottenere la stessa tabella che hai fatto tu con una formula che riguardava le CELLE verdi la colonna K serve a riportare la giacenza iniziale ora parli di tutti questi procedimenti che fai di cui non avevi fatto cenno quindi se descrivi bene i procedimenti che fai e soprattutto ricrei la tabella che dobbiamo ottenere con le formule a mano spiegando come ci arrivi sicuramente la cosa si può fare
luca050284
00martedì 12 febbraio 2019 10:32
Ciao Dodo47,

Si, è un bel passo avanti, grazie; confrontando però con la mia matrice trovo un po' di differenze di quantità non vorrei fosse,appunto, la giacenza che non ho capito molto cosa fa. Prenderla dalla cella a fianco è corretto. È la nuova giacenza.
Faccio altre prove

Grazie tante
dodo47
00martedì 12 febbraio 2019 11:06
Re:
luca050284, 12/02/2019 10.32:

Ciao Dodo47,

Si, è un bel passo avanti, grazie; confrontando però con la mia matrice trovo un po' di differenze di quantità non vorrei fosse,appunto, la giacenza che non ho capito molto cosa fa. Prenderla dalla cella a fianco è corretto. È la nuova giacenza....



Differenze: in riga 24 e 26 ho riportato i tuoi risultati originali (quelli della riga verde per intenderci), e mi sembra di non riscontrare differenze.

Saldo precedente: d'accordo che è corretto prendere quello della cella affianco, ma, come accennato, il problema stava nel reperire il 1° saldo che è in col. C.

Il SE iniziale altro non fa che controllare se esiste una "settimana,anno" precedente in riga 1 a partire da J in poi: se esiste c'è un saldo, altrimenti no; quindi la prima volta, trovando vuoto J1 lo va a pescare in col. C; la seconda volta, poichè K1 contiene settimana,anno, lo prende dalla cella precedente; la terza volta, poichè L1 contiene settimana,anno, lo prende dalla cella precedente, etc etc.

saluti



Tommy.ExcelForum
00martedì 19 febbraio 2019 08:58
Ciao Luca,

se ho ben inteso ho risolto cosi riciclando la tua formula e idinviduando lo stock con un confronta:

in K4 chiusa come matriciale:

=INDICE($C:$C;CONFRONTA($J18&K$1;$A:$A&$E:$E;0);1)-MATR.SOMMA.PRODOTTO(--($A$2:$A$39=$J2);($D$2:$D$39="ODL")*($E$2:$E$39=K$1)*($F$2:$F$39))+MATR.SOMMA.PRODOTTO(--($A$2:$A$39=$J3);($D$2:$D$39="ODA")*($E$2:$E$39=K$1)*($F$2:$F$39))

in L4 da trascinare sulla riga:

=K4-MATR.SOMMA.PRODOTTO(--($A$2:$A$39=$J2);($D$2:$D$39="ODL")*($E$2:$E$39=L$1)*($F$2:$F$39))+MATR.SOMMA.PRODOTTO(--($A$2:$A$39=$J3);($D$2:$D$39="ODA")*($E$2:$E$39=L$1)*($F$2:$F$39))

In questo modo riga 2e3 non ti servono più.

E' un pò un macigno come formula, se avessi i valori "ODL" espressi in negativo potresti risparmiarti un pò di calcoli.
Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 19:41.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com