Domanda Carico e scarico magazzino

antonio68

Nuovo utente
22 Giugno 2018
8
1
Abruzzo
2016
0
Oltre ad allegare il file ed a premettervi che il magazzino è gestito al Costo Medio Ponderato, cerco di spiegarvi quello che desidererei avere con il Vs. prezioso aiuto a fine lavoro:
" l'obiettivo è che le 2 macro già presenti, oltre a scaricare le quantità del magazzino, lavorino anche sui valori degli articoli di magazzino interessati diminuendoli o incrementandoli secondo se si fa uno scarico o un carico, aggiornando naturalmente il costo medio ponderato. E' ovvio che lo scarico non influisce sul costo, ma le quantità devono essere aggiornate.
Nella scheda scarico ho simulato una lavorazione che prevede lo scarico di 5 articoli, mentre nel foglio carico c'è il carico di un nuovo articolo che come potrete notare ha il valore dei 5 articoli per l'appunto scaricati ed una quantità diversa che solitamente è inferiore per via dello scarto di lavorazione". Spero di essere stato chiaro e ringrazio in anticipo tutti coloro che vorranno intervenire.
 

Allegati

alfrimpa

VBA Expert
Supermoderatore
Expert
18 Dicembre 2015
20.682
1.713
66
Napoli
2013
398
antonio68 @antonio68

Due precisazioni:
  1. le macro vanno inserite in moduli standard e non nei moduli dei fogli che di norma accolgono procedure evento)
  2. in presenza di una struttura "tabella" l'istruzione per determinare il numero di riga dell'ultima cella piena è la seguente sh1.Cells(Rows.Count, 1).End(xlUp).End(xlUp).Row; quella che hai usato tu va bene quando non è presente la "tabella". Se usi la tua istruzione ti viene restituito il numero di riga dell'ultima cella della tabella anche se non è piena".
Per il resto personalmente non ho capito cosa dovrebbe succedere dopo l'esecuzione delle macro.

Per facilitare chi volesse rispondere puoi mostrare inserendolo a mano il risultato che ti aspetti?
 
  • Like
Reactions: antonio68

antonio68

Nuovo utente
22 Giugno 2018
8
1
Abruzzo
2016
0
antonio68 @antonio68

Due precisazioni:
  1. le macro vanno inserite in moduli standard e non nei moduli dei fogli che di norma accolgono procedure evento)
  2. in presenza di una struttura "tabella" l'istruzione per determinare il numero di riga dell'ultima cella piena è la seguente sh1.Cells(Rows.Count, 1).End(xlUp).End(xlUp).Row; quella che hai usato tu va bene quando non è presente la "tabella". Se usi la tua istruzione ti viene restituito il numero di riga dell'ultima cella della tabella anche se non è piena".
Per il resto personalmente non ho capito cosa dovrebbe succedere dopo l'esecuzione delle macro.

Per facilitare chi volesse rispondere puoi mostrare inserendolo a mano il risultato che ti aspetti?
Le macro utilizzate caricano e scaricano solo le quantità, mentre io vorrei, oltre alle quantità, che venissero incrementati o decrementati anche i valori. Per intenderci l'obiettivo è che la colonna importo sia del foglio "Carico" e sia del foglio "Scarico", naturalmente per ogni prodotto specificato, vada a sommarsi o a sottrarsi all'importo presente nella colonna "Magazzino Attuale" del foglio Magazzino. Spero di essere stato chiaro e comunque riallego il file con l'indicazione dell'operazione da effettuare. Ho letto il regolamento e credo che questa cosa contravvenga, ma non avevo altro modo per spiegare cosa mi aspetto. Mi auguro che vogliate perdonarmi questa licenza. Grazie di tutto e buona giornata
 

Allegati

giulianovac

Access/VBA Expert
Expert
9 Giugno 2018
2.531
83
Italy
2013 2019
184
Essendo da tablet non ho modo di guardare il tuo file, ma la gestione di magazzino si fa in modo completamente differente da ciò che hai implementato.
Non 2 fogli ma 1 solo foglio-tabella in cui si registrano i movimenti di carico e scarico ed in cui una colonna discrimina le due operazioni. Nelle righe di scarico i valori saranno negativi.
La somma per colonna dei dati ti daranno automaticamente valori e quantità del magazzino.
 

antonio68

Nuovo utente
22 Giugno 2018
8
1
Abruzzo
2016
0
Essendo da tablet non ho modo di guardare il tuo file, ma la gestione di magazzino si fa in modo completamente differente da ciò che hai implementato.
Non 2 fogli ma 1 solo foglio-tabella in cui si registrano i movimenti di carico e scarico ed in cui una colonna discrimina le due operazioni. Nelle righe di scarico i valori saranno negativi.
La somma per colonna dei dati ti daranno automaticamente valori e quantità del magazzino.
sono aperto a tutte le soluzioni e dunque non ho problemi a farlo con un solo foglio, non mi è invece chiara la colonna discriminante, nel senso perchè non poter utilizzare il meno davanti allo scarico?? Ma soprattutto volevo capire cosa intendi somma per colonna dei dati. La somma o sottrazione dev'essere fatta in corrispondenza dell'articolo selezionato e deve essere progressivo o regressivo partendo dal valore già presente nella colonna "Magazzino attuale"
 

giulianovac

Access/VBA Expert
Expert
9 Giugno 2018
2.531
83
Italy
2013 2019
184
Puoi benissimo utilizzare anche solo il meno, ma in genere si usa un campo apposito.
Esempio S o C.
Per somma intendo quella finale che fornisce la valorizzazione del magazzino, la giacenza, e così via che puoi filtrare per articolo, intervallo di date, ecc.
 

antonio68

Nuovo utente
22 Giugno 2018
8
1
Abruzzo
2016
0
Puoi benissimo utilizzare anche solo il meno, ma in genere si usa un campo apposito.
Esempio S o C.
Per somma intendo quella finale che fornisce la valorizzazione del magazzino, la giacenza, e così via che puoi filtrare per articolo, intervallo di date, ecc.
Grazie innanzitutto di tutti i suggerimenti, il mio problema però è che quando faccio un carico di magazzino o un acquisto da fornitore, siccome normalmente i costi di acquisto e/o di lavorazione sono diversi da quello medio che gli articoli movimentati già hanno, devo aggiornare il valore attuale dello stock, quindi dividerlo per la quantità in stock ed ottenere il nuovo Costo Medio Ponderato. Questo valore verrà successivamente utilizzato poi negli scarichi per lavorazione e o per le vendite. Spero di averti dato qualche ulteriore elemento utile alla soluzione. Grazie.
 

giulianovac

Access/VBA Expert
Expert
9 Giugno 2018
2.531
83
Italy
2013 2019
184
In tal caso devi ricalcolare ogni volta per avere la media ponderata, ma questa operazione dovrebbe essere implementata in una fase intermedia, ma non è chiaro come intendi procedere (almeno non per me, che non posso visionare il file).
Attendi qualcuno che possa farlo.
 
  • Like
Reactions: antonio68

antonio68

Nuovo utente
22 Giugno 2018
8
1
Abruzzo
2016
0
In tal caso devi ricalcolare ogni volta per avere la media ponderata, ma questa operazione dovrebbe essere implementata in una fase intermedia, ma non è chiaro come intendi procedere (almeno non per me, che non posso visionare il file).
Attendi qualcuno che possa farlo.

Appena lo potrai vedere sono certo che immediatamente comprenderai qual'è il mio obiettivo e credo che per tanta gente esperta come te che frequenta questo forum sia assolutamente raggiungibile. Grazie
 

antonio68

Nuovo utente
22 Giugno 2018
8
1
Abruzzo
2016
0
antonio68 @antonio68

Due precisazioni:
  1. le macro vanno inserite in moduli standard e non nei moduli dei fogli che di norma accolgono procedure evento)
  2. in presenza di una struttura "tabella" l'istruzione per determinare il numero di riga dell'ultima cella piena è la seguente sh1.Cells(Rows.Count, 1).End(xlUp).End(xlUp).Row; quella che hai usato tu va bene quando non è presente la "tabella". Se usi la tua istruzione ti viene restituito il numero di riga dell'ultima cella della tabella anche se non è piena".
Per il resto personalmente non ho capito cosa dovrebbe succedere dopo l'esecuzione delle macro.

Per facilitare chi volesse rispondere puoi mostrare inserendolo a mano il risultato che ti aspetti?
Le macro utilizzate caricano e scaricano solo le quantità, mentre io vorrei, oltre alle quantità, che venissero incrementati o decrementati anche i valori. Per intenderci l'obiettivo è che la colonna importo sia del foglio "Carico" e sia del foglio "Scarico", naturalmente per ogni prodotto specificato, vada a sommarsi o a sottrarsi all'importo presente nella colonna "Magazzino Attuale" del foglio Magazzino. Spero di essere stato chiaro e comunque riallego il file con l'indicazione dell'operazione da effettuare. Ho letto il regolamento e credo che questa cosa contravvenga, ma non avevo altro modo per spiegare cosa mi aspetto. Mi auguro che vogliate perdonarmi questa licenza. Grazie di tutto e buona giornata
antonio68 @antonio68

Due precisazioni:
  1. le macro vanno inserite in moduli standard e non nei moduli dei fogli che di norma accolgono procedure evento)
  2. in presenza di una struttura "tabella" l'istruzione per determinare il numero di riga dell'ultima cella piena è la seguente sh1.Cells(Rows.Count, 1).End(xlUp).End(xlUp).Row; quella che hai usato tu va bene quando non è presente la "tabella". Se usi la tua istruzione ti viene restituito il numero di riga dell'ultima cella della tabella anche se non è piena".
Per il resto personalmente non ho capito cosa dovrebbe succedere dopo l'esecuzione delle macro.

Per facilitare chi volesse rispondere puoi mostrare inserendolo a mano il risultato che ti aspetti?
Le macro utilizzate caricano e scaricano solo le quantità, mentre io vorrei, oltre alle quantità, che venissero incrementati o decrementati anche i valori. Per intenderci l'obiettivo è che la colonna importo sia del foglio "Carico" e sia del foglio "Scarico", naturalmente per ogni prodotto specificato, vada a sommarsi o a sottrarsi all'importo presente nella colonna "Magazzino Attuale" del foglio Magazzino. Spero di essere stato chiaro e comunque riallego il file con l'indicazione dell'operazione da effettuare. Ho letto il regolamento e credo che questa cosa contravvenga, ma non avevo altro modo per spiegare cosa mi aspetto. Mi auguro che vogliate perdonarmi questa licenza. Grazie di tutto e buona giornata

scusami se ti disturbo, ma volevo riallegare il file perchè c'era una leggera imprecisione nella parte che ho aggiunto dove cerco di spiegare il risultato che intendo ottenere. E' un'imprecisione solo matematica e non influisce su altro. Mi scuso nuovamente.
 

Allegati

Sostieni ForumExcel

Aiutaci a sostenere le spese e a mantenere online la community attraverso una libera donazione!