Condividi:        

Gestione Magazzino

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

Re: Gestione Magazzino

Postdi danibi60 » 03/01/23 18:39

Ciao Antohony

Tu scrivi:

il mio file su dropbox ora e' allineato a questo codice...

Ho scaricato il tuo file ma il tutto è ancora uguale a prima e nella Sub WorksheetChange il codice da Te scritto non c'è... inoltre le celle (tutte risultano ancora modificabili)

Inoltre se vado in visualizza macro vedo che vi sono tre

Modulo1.ImportaPIT
Modulo2.ImportaPIT
ShutForm

Queste tre vanno lasciate oppure sono reduci dal lavoro fatto nel file di quest'estate?

Grazie
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Sponsor
 

Re: Gestione Magazzino

Postdi Anthony47 » 03/01/23 21:24

Il file era rimasto aperto sul mio pc, probabilmente dropbox non lo ha sincronizzato; ora "è allineato"

Inoltre se vado in visualizza macro vedo che vi sono tre
Modulo1.ImportaPIT
Modulo2.ImportaPIT
ShutForm
Le prime due sono residui del file che hai pubblicato tu e che io non ho tolto.
La terza fa parte del mio codice e va mantenuto

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

Re: Gestione Magazzino

Postdi danibi60 » 04/01/23 09:49

Ciao Anthony
Purtroppo è ancora come prima...

Te lo riallego

https://www.dropbox.com/s/jh613u5hbdb8r ... .xlsm?dl=0

Visto che ci sono, ieri mentre effettuavo alcuni test, ho notato che se per assurdo dovessi aver sbagliato l'inserimento di una quantità da scaricare (es. nel file che ti giro è inserito in K2 11, ma nella realtà avrei dovuto indicare 9, questo correttamente genera comunque una riga di riporto ma se io volessi correggere l'errore appunto in 9 me lo fa fare ma mi obbliga a toccare manualmente la riga di riporto... lo trovo rischioso, potrei anzi (visto che non sarei il solo a lavoraci) potrebbero dimenticarsi di correggere il riporto e creare così dei disallineamenti...

Sarebbe possibile generare attraverso un tasto o una funzione l'annullamento del dato inserito così come la linea di riporto e rigenerare così nuovamente il tutto inserendo il dato esatto?

Infine, vorrei inserire alcune colonne con delle diciture nuove ma non me lo fa fare così come la possibilità di ca,biare alcune intestazioni...

Sarebbe possibile e se si mi indichi come procedere senza creare caos con le formule?

Grazie

Daniby
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi Anthony47 » 04/01/23 10:11

Ciao Anthony
Purtroppo è ancora come prima...
Devi essere piu' esplicito: cosa hai fatto, che cosa e' successo, che cosa ti aspettavi che succedesse.
Avatar utente
Anthony47
Moderatore
 
Post: 19147
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Gestione Magazzino

Postdi danibi60 » 04/01/23 10:44

Ti avevo scritto:

il mio file su dropbox ora e' allineato a questo codice...

Ho scaricato il tuo file ma il tutto è ancora
uguale a prima e nella Sub WorksheetChange il codice da Te scritto non c'è... inoltre le celle (tutte risultano ancora modificabili)


e Tu mi hai risposto:

Il file era rimasto aperto sul mio pc, probabilmente dropbox non lo ha sincronizzato; ora "è allineato"

Allora ho provato a scaricarlo nuovamente dal tuo link, ma le celle ancora risultano modificabili...

Perdona se non sono stato chiaro in modo sufficiente :-? :-? :-?

Danibi
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi Anthony47 » 04/01/23 11:12

Quello che dici e' alquanto strano, perche' il file byDANIBY_Gestione Magazzino D_C20730_C21229_2.xlsm che hai condiviso stamattina quel pezzo di codice lo contiene, e se io su quel file provo a modificare una riga di "riporto" me lo impedisce...
Secondo me tu hai qualche file che lascia il tuo Excel con gi "eventi" disabilitati: chiudi Excel, riaprilo, riapri il tuo file; prova ora a modificare B6 e non dovrebbe fartelo fare (con messaggio).

Visto che ci sono, ieri mentre effettuavo alcuni test, ho notato che se per assurdo dovessi aver sbagliato l'inserimento di una quantità da scaricare (es. nel file che ti giro è inserito in K2 11, ma nella realtà avrei dovuto indicare 9, questo correttamente genera comunque una riga di riporto ma se io volessi correggere l'errore appunto in 9 me lo fa fare ma mi obbliga a toccare manualmente la riga di riporto... lo trovo rischioso, potrei anzi (visto che non sarei il solo a lavoraci) potrebbero dimenticarsi di correggere il riporto e creare così dei disallineamenti...

Sarebbe possibile generare attraverso un tasto o una funzione l'annullamento del dato inserito così come la linea di riporto e rigenerare così nuovamente il tutto inserendo il dato esatto?
Si puo' fare, ma dopo aver esaminato quale e' il vostro flusso di lavoro attuale e quello desiderato; cose che solo un consulente professionale puo' fare.
Al momento le macro danno un aiuto, non si sostituiscono all'intelligenza degli umani, buona o perversa che sia.

Infine, vorrei inserire alcune colonne con delle diciture nuove ma non me lo fa fare così come la possibilità di ca,biare alcune intestazioni...
Sarebbe possibile e se si mi indichi come procedere senza creare caos con le formule?
Mi sono accorto che la modifica che preveniva le modifiche alle righe di riporto non controllava correttamente se l'area modificata era all'interno della tabella; ho quindi inserito un ulteriore livello di if: If Not Application.Intersect(myC, Range("Movimenti")) Is Nothing Then /End If alla modifica precedente.

Con questa modifica, la Sub Worksheet_Change non dovrebbe interferire con modifiche esterne all'area dati della tabella.
Ho inoltre reintrodotto l'opzione "Ignora":
-se la cella P1 (corrispondente all'intervallo nominato "Ignora") contiene 123 allora la Worksheet_Change non fa nessun controllo, limitatamente a 1 sola modifica (riscrivere 123 in P1 per un'altra modifica)

Ambedue queste modifiche sono ora integrate nel codice del mio file dropbox; le modifiche sono marcate "C30104" (ho controllato!)
Avatar utente
Anthony47
Moderatore
 
Post: 19147
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Gestione Magazzino

Postdi danibi60 » 04/01/23 14:04

Ciao sembra che tutto funzioni correttamente e comunque avevi ragione tu (come sempre del resto) ho dovuto chiudere Excell e riavviarlo, altrimenti mi lasciava modificare qualsiasi dato... boh...)

Ora faccio qualche test ulteriore, più tardi Ti rimando la richiesta (lasciata pending per il momento) per poter conteggiare gli addebiti dei costi mensili (in un mio precedente messaggio l'avevo già scritta, ma come dici tu forse è il caso di fare degli esempi chiari...

A dopo e sempre grazie infinite

Danibi
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi danibi60 » 04/01/23 19:09

Ciao, prima di arrivare alla richiesta di valorizzazione costi, lascia che ti chieda spiegazioni ulteriori per questo tuo punto:

Mi sono accorto che la modifica che preveniva le modifiche alle righe di riporto non controllava correttamente se l'area modificata era all'interno della tabella; ho quindi inserito un ulteriore livello di if: If Not Application.Intersect(myC, Range("Movimenti")) Is Nothing Then /End If alla modifica precedente.

Cosa comporta questa tua modifica?

Inoltre, ho provato ad inserire una nuova colonna ma ho visto che poi questa modifica non genera più nel caso inserisca un numero inferiore sia in K 8 o K9 ma non genera più la riga di "Riporto", allora non ho salvato, sono uscito dal file l'ho riaperto e comuqnue nonostante abbia messo in K8 e K9 due numeri inferiori il sistema non genera la riga di "riporto" indi per cui immagino che l'aver inserito una colonna aggiuntiva nella tabella non fosse la causa della mancata creazione della riga "Riporto"

Per inciso (a memoria non credo tu abbia rispsto a questo mio quesito, Ti chiedo: se cambio un intestazione o aggiungo appunto una colonna accade qualcosa? (questo per evitare di scocciarti ogni volta...

Ma veniamo alla valorizzazione dei costi:

Il costi sono per ogni singolo bancale di €10,00 totale così composti :€3 scarico + €3 carico + €4 giacenza a magazzino

come da specchietto in data 30/11 sono entrati 33 bancali

In questo caso addebito subito € 6 (€3+€3 scarico e carico), il rimanente €4 (costo magazzinaggio) a fine mese... Totale €10,00

Indi per cui al 30/11 per il mese addebiterei per questi 33 bancali addebiterei al cliente €330 (3+3+4)

In data 30/12 ne entrano altri 25, per questi in Dicembre €250,00

In data 04/12 per ne escono 25 del lotto entrato il 30/11 (come da tuo specchietto), dovrò a fine del mese di dicembre aggiungere €4 per gli 8 rimasti a magazzino

Di fatto il mese successivo oltre al costo totale di €10 che si addebitano di default ogni volta entrano dei bancali si dovranno aggiungere €4 per i bancali restati in giacenza e sino a quando queste giacenze si azzereranno....

Sono certo di essermi spiegato con poca chiarezza ma do per certo che la tua riconosciuta competenza saprà comprendere il mio tortuosismo

Ti allego il Tuo file con quanto su descritto e con le indicazioni dei conteggi, ho notato che genera anche delle righe colorate e non capisco come mai...

https://www.dropbox.com/s/jh613u5hbdb8r ... .xlsm?dl=0

Grazie Danibi
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi danibi60 » 09/01/23 14:01

Ciao @Anthony, niente da fare per la mia ultima richiesta?

Grazie mille

Danibi
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi Anthony47 » 09/01/23 20:54

Avevo semplicemente perso il tuo secondo messaggio del 4-1 :oops:

Se non ti inserisce il "riporto" allora il tuo Excel e' fermo con gli "eventi" disabilitati; in quel caso la cosa da fare e' chiudere excel e riaprirlo.
Pero' ci dobbiamo interrogare come mai il tuo excel finisce così spesso con gli eventi disabilitati: devi verificare quali file con macro hai usato cercando di trovare quale produce la situazione.

Anche il mio file potrebbe produrre questa situazione, se va in errore durante la Sub Worksheet_Change: in questo caso dovrebbe pero' uscire un messaggio di errore ma se viene terminata la macro invece di debuggare potrebbero rimanere gli eventi disabilitati.
Se ti fosse successo "spesso" spiegherebbe perche' ti ritrovi spesso in questa situazione

Comunque per evitare di essere noi stessi causa dei nostri mali modifichiamo la Sub Worksheet_Change di foglio Movimenti:
1) in testa inseriamo l'istruzione marcata ++
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cTRow As Long, ccVal, oVal, Caso1 As Boolean, ShutOn
Dim myC As Range, dtCol As Long
'
On Error GoTo ExErr                     '++ Per evitare blocco degli "eventi" (1)

Application.EnableEvents = False
'Riporto non modificabile>
'segue codice macro


2) in coda inseriamo un msg per informare dell'errore (il blocco da ++ in avanti):
Codice: Seleziona tutto
' istruzioni macro
    End If
End With
ExErr:
Application.EnableEvents = True
'++ Per evitare blocco degli "eventi" (2)
    If Err.Number <> 0 Then
        MsgBox ("Errore num. " & Str(Err.Number) & Chr(13) & Err.Description)
        Err.Clear
    End If
End Sub

Questo impedisce che la macro in caso di errore possa bloccare gli eventi, ma ovviamente ogni situazione di errore va debuggata, quindi in caso di messaggio di errore va identificata e risolta la causa.
Ho introdotto la modifica al mio solito file, aggiungila nel file che usi tu

Mi sono accorto che la modifica che preveniva le modifiche alle righe di riporto non controllava correttamente se l'area modificata era all'interno della tabella; ho quindi inserito un ulteriore livello di if: If Not Application.Intersect(myC, Range("Movimenti")) Is Nothing Then /End If alla modifica precedente.


Cosa comporta questa tua modifica?
Effettivamente non e' chiaro il significato della modifica, ma questa serviva per poter ad esempio modificare la riga di intestazione della tabella.


Quanto all'aggiunta di colonne, la macro si aspetta che la data dell'entrata sia in colonna 1; che ci sia una intestazione [Uscita]; che [Q.tà Bancali] sia 3 colonne a sinistra di [Uscita]. Inoltre la riga di "riporto" replica le prime 8 colonne della tabella sulla nuova riga (mentre [Q.tà Bancali] viene popolata con la qt da "riportare")
Le altre intestazioni si possono cambiare, mentre nell'aggiunta mi pare che il vincolo sia che [Q.tà Bancali] sia 3 colonne a sinistra di [Uscita].

Quanto alla valorizzazione dei costi:
-correttamente calcoli la colonna Y sulle Entrate del mese
-erroneamente calcoli la colonna Z ancora sulle Entrare
-dovresti invece calcolare colonna Z sulla base della Giacenza (colonna V)

Ti torna?
Avatar utente
Anthony47
Moderatore
 
Post: 19147
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Gestione Magazzino

Postdi danibi60 » 09/01/23 21:40

Ciao, dove inserisco le tue due macro?

Nel file (quello che ti ho girato e riallego) vedo solo la ShutForm con scritto questo:
Sub ShutForm()
Unload UserForm1
End Sub


Inoltre vedo ancora presenti i due comandi delle macro del vecchio file generato quest'estate (le posso cancellare oppure generano errori?)

Mi scrivi

Quanto all'aggiunta di colonne, la macro si aspetta che la data dell'entrata sia in colonna 1; che ci sia una intestazione [Uscita]; che [Q.tà Bancali] sia 3 colonne a sinistra di [Uscita]. Inoltre la riga di "riporto" replica le prime 8 colonne della tabella sulla nuova riga (mentre [Q.tà Bancali] viene popolata con la qt da "riportare")
Le altre intestazioni si possono cambiare, mentre nell'aggiunta mi pare che il vincolo sia che [Q.tà Bancali] sia 3 colonne a sinistra di [Uscita].


Quindi se rispetto le posizioni i alcune intestazioni da te indicate posso cambiare il nome di alcune o inserirne di nuocve, giusto?

Ho visto che il riporto ora è compare vedi (riga 5) ma non va oltre in quanto (te l'ho segnalato) quando crea questo riporto colloca la quantità residuale in una cella errata...

In merito a questo:

Quanto alla valorizzazione dei costi:
-correttamente calcoli la colonna Y sulle Entrate del mese corretto
-erroneamente calcoli la colonna Z ancora sulle Entrare (qui è giusto che colloco il calcolo a parte dei €4,00 in quanto voglio separare i due addebiti)
-dovresti invece calcolare colonna Z sulla base della Giacenza (colonna V) se lascio separati i due addebiti, il mese successivo addebito per la quota entrante i €6 in colonna Y, in colonna Z i €4 per i bancali entrati delle quantità e in AA i 4 € dei residui del mese precedente...
Infatti in AA valorizzavo gli 8 pezzi di riporto riga 7 del mese di novembre....

Spero d'essermi spiegato con la necessaria chiarezza,
Danibi
https://www.dropbox.com/s/jh613u5hbdb8r ... .xlsm?dl=0
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi Anthony47 » 10/01/23 12:41

Ciao, dove inserisco le tue due macro?

Nel file (quello che ti ho girato e riallego) vedo solo la ShutForm con scritto questo:
Sub ShutForm()
Unload UserForm1
End Sub
Le parti di codice che ho pubblicato si riferiscono alla Sub Worksheet_Change del foglio Movimenti; la trovi sul modulo vba del foglio Movimenti; per arrivarci rapidamente: tasto dx sul tab col nome del foglio, scegli Visualizza codice.
Comunque ho ulteriormente modificato il codice, lascia stare le modifiche di ieri

Inoltre vedo ancora presenti i due comandi delle macro del vecchio file generato quest'estate (le posso cancellare oppure generano errori?)
A me non servono; visto che non servono neanche a te le ho eliminate anche dal mio file

Quindi se rispetto le posizioni i alcune intestazioni da te indicate posso cambiare il nome di alcune o inserirne di nuocve, giusto?
Giusto, ma per aggiungere /rimuovere colonne bisogna usare la procedura di "ignora"; vedi prosieguo del messaggio.

Ho visto che il riporto ora compare vedi (riga 5) ma non va oltre in quanto (te l'ho segnalato) quando crea questo riporto colloca la quantità residuale in una cella errata...
Me ne sono reso conto; vedi prosieguo del messaggio


Allora, effettivamente mi sono reso conto che la qt del riporto poteva essere scritta nella colonna sbagliata; quindi invece che fare affidamento sullo "scarto" con la colonna "Uscita" ora ne vado a calcolare la colonna effettiva usando l'intestazione Q.tà Bancali
Ho inoltre modificato la gestione di "Ignora", che VA USATO per aggiungere o togliere colonne alla tabella:
-si scrive 123 nella cella il cui nome e' "ignora" (P1, nel file da me rilasciato; cambia se si aggiungono o tolgono colonne)
-si aggiungono o tolgono colonne
Ho anche eliminato i moduli vba Modulo1 e Modulo2 che contenevano delle macro di vecchi progetti, che mi confermi non servono in questo.

Il mio file byDANIBY_Gestione Magazzino D_C20730_C21229.xlsm scaricabile da dropbox al solito link, https://www.dropbox.com/s/q0gyhfz43l3sr ... .xlsm?dl=0 e' allineato a queste modifiche.

Riporto comunque qui il codice della Sub WorkSheet_Change:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cTRow As Long, ccVal, oVal, Caso1 As Boolean, ShutOn
Dim myC As Range, dtCol As Long
Dim qtBanc As Long
'
On Error GoTo ExErr                     '++ Per evitare blocco degli "eventi" (1)

epos = 1
Application.EnableEvents = False
If Target.Address <> Range("ignora").Address Then       'C30110
    If Range("ignora").Value = 123 Then
        Range("ignora").Value = "Consenti?"
        GoTo ExErr
    End If
End If

'Riporto non modificabile>
epos = 2
dtCol = Range("Movimenti").Cells(1, 1).Column
For Each myC In Target
    If Cells(myC.Row, dtCol).Value > 55000 Then
    epos = 21
        If myC.Column >= dtCol And myC.Column < (dtCol + 6) And myC.Row <> Range("Movimenti[#All]").Cells(1, 1).Row Then    'C30110
            myca = myC.Address                                  'C30110
            Application.Undo
            ShutOn = Now + TimeSerial(0, 0, 3)
            Application.OnTime ShutOn, "ShutForm"
            UserForm1.Label1.Caption = "La riga " & Range(myca).Row & " è un ""Riporto"", i valori non possono essere modificati"
            UserForm1.Show
            GoTo ExErr
        End If
    End If
Next myC
'< Riporto non modificabile
epos = 3
With Target.Cells(1, 1)
    'Calcola colonna di Qta Bancali (C30110)
    qtBanc = Application.WorksheetFunction.Match("Q.tà Bancali", Application.WorksheetFunction.Index(Range("Movimenti[#All]"), 1, 0), False)
   
    If .Column = Me.Range("Movimenti[Uscita]").Column And .Value <> "zczc" Then
        ccVal = Target.Cells(1, 1).Value
        Application.Undo
        oVal = Target.Cells(1, 1).Value
        Application.Undo
        cTRow = .Row - Me.Range("Movimenti").Cells(1, 1).Row + 2
        If Year(Me.Range("Movimenti").Cells(cTRow, 1)) - Year(Date) > 50 And oVal > 0 Then
            MsgBox ("Hai modificato l'Uscita di una riga che ha un ""Riporto"" alla riga successiva" & vbCrLf _
              & "Probabilmente e' necessario modificare manualmente la Quantità del ""Riporto""")
            Caso1 = True
        End If
'        If .Value < .Offset(0, -3).Value Then
        If .Value < Cells(.Row, qtBanc).Value Then      '(C30110)
            If Caso1 = False Then
            epos = 31
                Selection.ListObject.ListRows.Add (cTRow)
                Me.Range("Movimenti").Cells(cTRow - 1, 1).Resize(1, 8).Copy Me.Range("Movimenti").Cells(cTRow, 1)
                Me.Range("Movimenti").Cells(cTRow, 1) = Application.WorksheetFunction.EDate(Me.Range("Movimenti").Cells(cTRow, 1).Value, 1200)
                Me.Range("Movimenti").Cells(cTRow, qtBanc) = Cells(.Row, qtBanc).Value - .Value         '(C30110)
                ShutOn = Now + TimeSerial(0, 0, 4)
'msg>
                Application.OnTime ShutOn, "ShutForm"
                UserForm1.Label1.Caption = "Aggiunta riga " & cTRow + 1 & " con il residuo da spedire"
                UserForm1.Show
'<msg
            End If
        End If
    End If
End With
epos = 4
ExErr:
Application.EnableEvents = True
'++ Per evitare blocco degli "eventi" (2)
    If Err.Number <> 0 Then
        MsgBox ("Errore num. " & Str(Err.Number) & " EPos=" & epos & Chr(13) & Err.Description)     'C30110
        Err.Clear
    End If
End Sub



Quanto ai dati di fatturazione, perdona ma non capisco se quello che hai scritto indica una situazione corretta o sbagliata.

Ripeto quello che ho capito io:
-fatturi un tot all'entrata di un lotto sia per retribuire l'entrata che per l'uscita
-fatturi un tot sulle giacenze di fine mese

Ad esempio, lavorando sulla tabella presente in colonne R:V del mio file:
-a Nov sono entrati 33 colli; addebiterai le quote Entrata/Uscita per 33 colli
-a fine novembre erano giacenti 33 colli; addebiterai le quote per giacenza di 33 colli
-a Dic entrano 25 colli; addebiterai le quote Entrata/Uscita per 25 colli
-a fine dicembre erano giacenti 22 colli; addebiterai le quote per giacenza di 22 colli
E così via

Se per esempio i 33 colli entrati a Nov fossero tutti usciti nello stesso mese allora a fine novembre la giacenza sarebbe stata Zero e non avresti fatturato la seconda quota (4€) ma solo la quote per E/U (6€)

Questo e' quanto ho capito; se ho capito male allora prova a spiegare nuovamente, magari ci arrivo :D

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

Re: Gestione Magazzino

Postdi danibi60 » 10/01/23 18:09

Per la parte del messaggio delle macro, alzo le mani in quanto quanto da te scritto è per me vangelo assoluto, unico dubbio (ma per ignoranza mia è la gestione qui indicata:

Ho inoltre modificato la gestione di "Ignora", che VA USATO per aggiungere o togliere colonne alla tabella:
-si scrive 123 nella cella il cui nome e' "ignora" (P1, nel file da me rilasciato; cambia se si aggiungono o tolgono colonne)
-si aggiungono o tolgono colonne


Quindi se voglio aggiungere una colonna fermo però restando i vincoli da te indicati nel tuo penultimo messaggio ...
(Quanto all'aggiunta di colonne, la macro si aspetta che la data dell'entrata sia in colonna 1; che ci sia una intestazione [Uscita]; che [Q.tà Bancali] sia 3 colonne a sinistra di [Uscita]. Inoltre la riga di "riporto" replica le prime 8 colonne della tabella sulla nuova riga (mentre [Q.tà Bancali] viene popolata con la qt da "riportare")
...sarà sufficiente che scriva dove ora è indicato "consenti?" in P1 il numero 123 e poi posso aggiungerla.. corretto?

Per la parte fatturazione ti segnalo quanto segue al tuo scritto:

Ripeto quello che ho capito io:
-fatturi un tot all'entrata di un lotto sia per retribuire l'entrata che per l'uscita [color=#FF0000]esatto

-fatturi un tot sulle giacenze di fine mese esatto

Ad esempio, lavorando sulla tabella presente in colonne R:V del mio file: ([b]vedo nella tua tabella una presenza di 4 colli su Ottobre che però non so da dove sbuchino??)

-a Nov sono entrati 33 colli; addebiterai le quote Entrata/Uscita per 33 colli (in questo caso appena entrano fatturo €6 cad.)
-a fine novembre erano giacenti 33 colli; addebiterai le quote per giacenza di 33 colli in questo caso €4,00
-a Dic entrano 25 colli; addebiterai le quote Entrata/Uscita per 25 colli vedi sopra (€6,00)
-a fine dicembre erano giacenti 22 colli; addebiterai le quote per giacenza di 22 colli da dove saltano fuori questi 22? non mi torna dal tuo conteggio...
E così via

Se per esempio i 33 colli entrati a Nov fossero tutti usciti nello stesso mese allora a fine novembre la giacenza sarebbe stata Zero e non avresti fatturato la seconda quota (4€) ma solo la quote per E/U (6€)[/color][/b] NO indipendentemente che escano nello stesso mese la quota di giacenza in logistica (fatto salvo accordi particolari la si fattura comunque in questo caso da te descritto a fine mese fatturerei comunque i €4 anche se fossero usciti lo stesso mese...

"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi danibi60 » 10/01/23 18:12

Dimenticavo di segnalarti nel tuo ultimo file aggiornato non si genera più la scritta "Riporto" nella riga che si aggiunge in automatico ma resa indicato sempre e solo "Entrata"....
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi Anthony47 » 10/01/23 19:38

Questa e' la tabella presente nel mio file:
Immagine

(ho appena modificato la formula per ripristinare nella colonna Tpo l'eventuale dicitura "Riporto")


Con le ultime modifiche i vincoli sulle colonne sono:
-la data e' in colonna 1 della tabella
-esiste una colonna chiamata Q.tà Bancali e una chiamata Uscita (ho eliminato il vincolo dello "scarto" tra queste due colonne)
-in caso di riga di "Riporto", le prime 8 colonne vengono copiate; poi la colonna Data viene modificata e la colonna Q.tà Bancali compilata con la qt di riporto


Per quanto riguarda la fatturazione allora avevo capito male ma non ho ancora capito come dovrebbe funzionare per la quota 4Euro; vuoi forse dire che questa quota va calcolata sulla somma tra Uscite del mese e Giacenza a fine mese? Cioe' (con i dati della mia tabella):
0 + 33 a Nov
36 + 22 a Dic
12 + 35 a Gen
0 + 35 a Feb
e cosi' via...
Avatar utente
Anthony47
Moderatore
 
Post: 19147
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Gestione Magazzino

Postdi danibi60 » 10/01/23 21:26

Ciao
i €4 di fatto sono il costo del magazzinaggio e per la logistica, tale costo, si fattura ogni volta che un bancale tocca terra in un magazzino e per ogni mese che resta in magazzino

Per farti un esempio reale:

Partiamo da Gennaio
Entrano 30 bancali: Per questi si fatturano subito €6,00 (costo movimentazione) e i rimanenti €4,00 (stoccaggio) a fine mese

SE durante il mese di gennaio ne uscissero solo 20, per la rimanente quota di 10 pezzi rimasti a magazzino in Febbraio si fattureranno solo i €4 cad...

Se in febbraio di questi 10 ne escono solo 5

In Marzo per i 5 rimasti si fattureranno €4 cad... e così via sino a quando di questi 5 non ne rimarrà nemmeno uno a magazzino

SE per assurdo rimanesse in magazzino 1 solo bancale del lotto di 30 immessi in Gennaio sino al 31/12/2023 ogni mese per quel bancale fattureremo €4 cad.

Ho preferito farti questo esempio in quanto i numeri del file avendo inserito i mesi non allineati andavo in confusione.

A proposito visto che vorrei testarlo con dei dati reali, per pulire il file e iniziare un data entry ex novo come faccio? ho provato a cancellare (utilizzando il 123 in P1) ma mi ha fatto un po' di caos... cosa devo fare per "sbianchettare" il tutto

Infine, compreso il meccanismo di calcolo, sarebbe possibile posizionare a destra della Tabella posta in R:V fare in modo che si abbia il costo di fatturazione diviso con quanto scritto sopra?

Grazie mille
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi Anthony47 » 11/01/23 00:04

Mi spiace, ma continuo a non capire la logica della fatturazione. Sembrerebbe che se ti sbarazzi subito della merce vieni pagato tutto e subito ma se la mantieni a magazzino vieni pagato mai, che per me non ha senso.

Per la pulizia del file:
-imposta 123 e cancella tutte le colonne a sinistra
-reimposta 123 e pulisci le colonne Uscita /Data U

Nel file ora in linea ho aggiunto in colonna X e Y il calcolo della fatturazione come io la capisco:
-in X, le quantita' entrate nel mese per la tariffa impostata in Z1
-in Y, la somma tra uscite mese e giacenza fine mese per la tariffa impostata in AA1

Se fosse vera la situazione che se ti resta merce a magazzino non vieni pagato mai allora significa che la formula in Y dovrebbe essere solo =Uscite.del.mese * Tariffa.in.AA1
Avatar utente
Anthony47
Moderatore
 
Post: 19147
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Gestione Magazzino

Postdi danibi60 » 11/01/23 07:33

Ok, per la cancellazione dei dati fatto come mi hai indicato e tutto ora è ok...

Come al soloito non mi sarò spiegato bene creandoti della confusione...permettimi di chiederti però:

Sembrerebbe che se ti sbarazzi subito della merce vieni pagato tutto e subito ma se la mantieni a magazzino vieni pagato mai, che per me non ha senso.

Perchè scrivi se la mantini a magazzino vieni pagato mai... non è così

torniamo ai famosi 30 bancali entrati oggi come esempio

1) per ogni bancale che entra (come tocca terra) scatta l'addebito , composto da €6 come operazione di scarico e carico futuro questo importo lo si fattura solo quanto la merce entra. indi per cui la prima fattura sarà di €6 x 30 = €180,00
2) a fine mese (dimentica per un attimo se da qui a fine gennaio di questi 30 ne esca qualcuno, di questo parliamo dopo) fatturo €4,00 indi per cui € €4,00 x 30 = €120

Di fatto a fine mese per questi 30 sommando le due fatture il cliente avrà un costo di €300 (€180+€120)

Ora veniamo alle movimentazioni

la settimana prossima ipotizziamo il 20/01 escono 20 bancali

A fine di Gennaio non cambia nulla per la fatturazione in quanto il cliente paga per un mese intero tutto il carico completo di 30 questo per i meccanismi che sono insiti alla logistica.

A questo punto al 31/01 avremo una giacenza di 10 bancali

Il 10 di Febbraio (ma fosse pure il 27/02 non cambia nulla il cliente paga sempre un mese intero di costi) entrano nuovamente 30 bancali, indi per cui avremo a magazzino fisicamente i 30 appena entrati e la giacenza di 10 di Gennaio...quindi 40 bancali
Per i 30 scatta immediatamente quanto indicato al punto 1
alla fine di Febbraio emetteremo, per i 30 €4,00 vedi punto 2 + altri €4 per i 10 rimasti a magazzino

Alla fine di Febbraio la fatturazione sarà:

€6 x30 = 180 entrate fisiche in Febbraio
€4x30 = 120 entrate fisiche di Febbraio
€4x10 = 40 giacenza magazzino di Gennaio

Totale fattura €340,00

e così via...

Spero d'esser stato più chiaro...
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi danibi60 » 11/01/23 10:26

Ciao alla luce di quanto sopra, Ti allego il file con i carichi reali così tu abbia ancor più nitido il tutto

Mi sembra che le tue formule in R:V collimino con quanto esposto nel mio ultimo messaggio

Alcune richieste sulla forma al fine da non creare confusioni e gestire già a colpo d'occhio il tutto con maggior semplicità

A) il file ancora non riporta la scritta "Riporto" ...

B) Mi piacerebbe che là dove le quantità causa uscita totale del lotto (le le ho evidenziate in verde) entrato la riga piuttosto che la cella si colori di verde o vedi tu cosa sarebbe meglio al fine da tradurre il tutto in una maggiore chiarezza.
Ora tutte sono colorate di fucsia il ché per il momento visto che le righe sono poche è ancora chiaro ma tra un po' sono certo che creerebbe molta confusione, non credi?

Ho aggiunto una colonna i D come codice d'uscita in quanto abbino manualmente il documento a quello d'entrata questo mi aiuta quando scarico lotti praticamente entrati in tempi diversi ma identici...

Attendo Tuo feed back

Ciao Daniby

https://www.dropbox.com/s/oqlom3vqel1fl ... .xlsm?dl=0
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
Win 10 & Office365 Premium
danibi60
Utente Senior
 
Post: 489
Iscritto il: 11/07/13 09:21
Località: Bergamo

Re: Gestione Magazzino

Postdi Anthony47 » 11/01/23 10:57

Quindi, parlando della sola "quota giacenza" (€ 4):
1) Se a gennaio entra 30 e non ne escono, a fine mese fatturerai la giacenza di 30?
2) Se a gennaio entra 30 e nel mese di questi 30 ne escono 20, a fine mese fatturerai comunque la giacenza di 30, cioe' del lotto completo anche se la giacenza e' 10? Cioe' come caso 1?
3) Se a febbraio ne entrano altri 20 e "di questi 20" ne escono 10 mentre dei 10 di gennaio non ne escono, a fine mese fatturerai la giacenza di 20 (lotto di febbraio) + 10 di residuo da gennaio, cioe' per 30?
4) Se invece a febbraio ne entrano 20 ed escono i 10 del lotto di gennaio (quindi stessa quantita' di lavoro del caso 3), a fine mese fattureresti solo per 20 (il lotto completo di febbraio)?
Avatar utente
Anthony47
Moderatore
 
Post: 19147
Iscritto il: 21/03/06 16:03
Località: Ivrea

PrecedenteProssimo

Torna a Applicazioni Office Windows


Topic correlati a "Gestione Magazzino":


Chi c’è in linea

Visitano il forum: scanacc e 52 ospiti