di Anthony47 » 22/06/17 00:16
In linea di massima farei cosi':
1) inserisco il foglio "Ricevute" all'interno del file QuoteBasket
2) inserisco un foglio AnaliticoFatture nello stesso file
3) aggiungo sul foglio dei PagamentiAnnui, per ognuno dei pagamenti, la colonna "Data pagamento" e la colonna "Numero ricevuta".
4) una Sub Worksheet_Deactivate sul foglio dei PagamentiAnnui, se la cella selezionata e' di un pagamento, mi crea in un'area libera, diciamo da Z2 verso destra (la riga 1 la riserviamo per le intestazioni da scrivere una tantum a mano), l'elenco dei campi della fattura; diciamo quindi
Data ricevuta (*1), Ammontare, Nome /Cognome, Numero ricevuta (*2) e le altre cose presenti sul foglio PagamentiAnnui che devono figurare sulla fattura.
*1: se la ricevuta e' ancora da emettere questa e' la data Odierna
*2: se la ricevuta e' ancora da emettere questo campo e' vuoto
Fai in modo che questi campi siano gli stessi che figurano nel foglio AnaliticoFatture
Infine la stessa Sub azzera il contenuto di AnaliticoFatture /Z2 (vedi punto 5)
5) una Sub Worksheet_Deactivate sul foglio AnaliticoFatture mi scrive in una cella libera, diciamo Z2, la riga attualmente selezionata, se corrisponde a una fattura emessa; contemporaneamente cancella su foglio PagamentiAnnui l'area Z2:AJ2.
6) Una Sub Worksheet_Activate su foglio Ricevute controlla quale Z2 e' compilato (foglio PagamentiAnnui oppure AnaliticoFatture) e popola le celle della ricevuta con i valori appropriati. Se il numero fattura manca allora lo va a calcolare su quanto gia' presente in AnaliticoFatture; se invece e' gia' presente allora magari in qualche cella scrive in grosso "Duplicato"
7) Una macro di Stampa su foglio Ricevute si occupa di
a) stampare il foglio e produrre la ricevuta
b) se e' una nuova ricevuta, accodare al contenuto del foglio AnaliticoFatture il riepilogo della nuova ricevuta emessa e compilare le colonne Data pagamento / Numero ricevuta su foglio PagamentiAnnui
8) Una macro di InviaByMail sempre su foglio Ricevute fa le stesse cose del punto 7, ma invece della Stampa fa un salvataggio come Pdf che viene inviato come allegato di una mail con testo minimo. Dopo l'invio il pdf puo' essere distrutto.
Questo e' tutto...
Se registro un nuovo pagamento allora ne scrivo il valore su foglio PagamentiAnnui; vado su foglio Ricevute; faccio la stampa o l'invio della mail.
Se voglio produrre un duplicato lo posso fare sia dal foglio PagamentiAnnui (seleziono il pagamento; vado su foglio Ricevute) che da foglio AnaliticoFatture (seleziono la riga; vado su foglio Ricevute. Probabilmente e' piu' semplice farlo dal foglio PagamentiAnnui).
L'equivalente del blocchetto autoricalcante e' il contenuto del foglio AnaliticoFatture
Ciao