Condividi:        

Very Hard question in excel

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

Very Hard question in excel

Postdi al3ssio » 21/04/18 16:18

Ciao a tutti ragazzi. Torno dopo tanto con una bella domanda in Excel! :-)

Ho in excel una sequenza di quantità di vendita, una per ogni Mese M: Q1(meseM1), Q2(meseM2), Qn(mese Mn).

A partire da queste quantità di vendita devo comunicare al mio fornitore quali sono le quantità che deve spedire ogni mese - S1(meseM1), S2(meseM2), Sn(mese Mn) in modo che io riceva le quantà di vendita in tempo, conoscendo che ogni mese ho un Lead-time di spedizione diverso: L1 (Mese1), L2(meseM2), Ln (meseMn).

Anche se non realista, si può assumere che :
- Tutti i mesi di 30 gg
- Il fornitore spedisce in ogni giorno 1/30 della sua Sn mensile

In pratica dovrei arrivare alla fine ad un foglio excel che, dopo l'input di Q1, Qn e L1, Ln mi restituisca per ogni mese S1, Sn

Fatemi sapere se non e' chiaro... o se trovate una soluzione al mio problema! :)

Grazie,
Alessio
al3ssio
Utente Senior
 
Post: 238
Iscritto il: 08/05/04 15:59

Sponsor
 

Re: Very Hard question in excel

Postdi Anthony47 » 21/04/18 22:28

Proviamo con una risposta semplice:
-se al mese1 ti serve disporre della quantita' QM1 e il tempo di consegna e' LT1 allora il fornitore deve spedirti la QM1 alla data calcolata con =Inizio Mese1 – LT1

Se invece avessi delle previsioni di vendita giornaliere e il fornitore fosse disponibile a consegne just-in-time giornaliere allora calcoli la data di spedizione per il venduto giornaliero come detto prima e poi crei una tabella pivot che riepiloghi per ogni data il totale dello spedito (per prendere in considerazione LeadTime diversi).

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19183
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Very Hard question in excel

Postdi al3ssio » 22/04/18 00:02

ciao Anthony,
Grazie per la tua risposta. Forse non mi sono spiegato bene - o non ho capito la tua risposta! :)

Allora,la pongo in maniera diversa: immaginiamo che ti dicano che un mercato avra' una domanda D1, D2, Dn in n mesi consecutivi.
Tu devi dire al tuo fornitore quanto deve produrre, ma per semplicita' diciamo spedire, ogni mese (a partire dal mese Zero, precedente a quello della domanda D1), in modo da rispondere alla domanda di ogni mese. Ovviamente voglio che il mio fornitore produca il minimo necessario, sia per ragioni economiche, sia perche' e' in rampup e ha capacita' limitata.

Assumiamo che ogni mese la produzione del fornitore e' distribuita equamente durante i 30giorni (assumiano anche che tutti i mesi hanno 30 giorni)

Assumiamo anche per semplificare un po' che ogni mese il fornitore abbia lo stesso tempo di spedizione LT

Spero di esser stato piu' chiaro.. ;)

Grazie ancora!
Alessio
al3ssio
Utente Senior
 
Post: 238
Iscritto il: 08/05/04 15:59

Re: Very Hard question in excel

Postdi Anthony47 » 22/04/18 23:56

La risposta non cambia anche con le ultime informazioni:
Immagine

In colonna A la data di inizio settimana; in colonna C l'ipotesi di fabbisogno per la settimana; in colonna C il tempo di consegna; in colonna D calcoli la data di spedizione con la formula =A2-C2

Poiche' ho supposto che i tempi di consegna siano diversificati uso una tabella pivot per aggregare le date di spedizione, aggregandole poi a blocchi di 7 giorni = 1 settimana
Così, per esempio, nella settimana del 15-giu il fornitore dovra' spedire 40 pezzi, che sono il fabbisogno delle settimane del 25-giu e 2-lug

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19183
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Very Hard question in excel

Postdi al3ssio » 23/04/18 06:52

Il problema è che i leadtimes non sono funzione della data di fabbisogno, ma sono funzione, ogni mese, del mese di spedizione del fornitore... :-/
al3ssio
Utente Senior
 
Post: 238
Iscritto il: 08/05/04 15:59

Re: Very Hard question in excel

Postdi Anthony47 » 24/04/18 01:12

Allora, per evitare di gestire il "riferimento circolare":
-nel tuo foglio creati una tabella che in prima colonna contiene i numeri da 1 a 12 (i mesi), e in seconda colonna i LeadTime in giorni che si applicano
-assegna a questa tabella il nome "LeadTimes" (o il nome che preferisci)

Tornando a un ipotetico layout come quello della mia immagine precedente, calcoliamo i valori di colonna D con questa macro:
Codice: Seleziona tutto
Sub CalcolaSpediz()
Dim I As Long, cLead As Long, cDat As Date
Dim cShp As Date
'
For I = 2 To Cells(Rows.Count, 1).End(xlUp).Row
    cDat = Cells(I, 1)
    Cells(I, "D") = cDat
reCL:
DoEvents
    cLead = Application.WorksheetFunction.VLookup(Month(cDat), Range("LeadTimes"), 2, 0)
    cShp = Cells(I, 1) - cLead
    If cShp < Cells(I, "D") Then Cells(I, "D") = cShp
    If Month(cDat) <> Month(Cells(I, "D").Value) Then
        cDat = Cells(I, "D")
        GoTo reCL
    End If
Next I
End Sub

In questo caso la colonna C (LeadTime) non e' piu' usata; se utile se ne puo' calcolare il valore con l formula
Codice: Seleziona tutto
=CERCA.VERT(MESE(D2);LeadTimes;2;0)


Oppure la colonna puo' essere eliminata previo aggiustamento nella macro dei vari "D" in "C"

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19183
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Very Hard question in excel

Postdi al3ssio » 26/04/18 22:20

Grazie mille Anthony!!!
al3ssio
Utente Senior
 
Post: 238
Iscritto il: 08/05/04 15:59


Torna a Applicazioni Office Windows


Topic correlati a "Very Hard question in excel":


Chi c’è in linea

Visitano il forum: Nessuno e 63 ospiti

cron