Condividi:        

problema ricevute in excels

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

problema ricevute in excels

Postdi corrado62 » 15/10/14 18:36

Salve a tutti ,è la prima volta che scrivo un post qui in questo forum mi scuso se la sezione è sbagliata .
Espongo il mio problema sto aprendo un negozio di parucchiera x la moglie,
sto preparando un programma in excels e mi sono arenato sul foglio RicevuteFiscali.
Il mio problema come inserire una macro che dopo aver salvato la prima ricevuta mi possa cambiare il numero di ricevuta in numero progressivo
(esempio 0001...0002...ecc.ecc.),e che cancelli i dati inseriti (codice ,qta,descrizione) come se fosse una nuova ricevuta ma incrementando il numero della ricevuta.
E che mi riporta su un foglio esterno creato sempre in xlsm. che andro' ha rinominare DatiRicevute.
con le seguenti colonne n°ricevuta - data- totale - sub totale, senza andare ha cancellare i dati dopo che vengono salvati in poche parole cella dopo cella,
cosi posso avere tutti gli incassi per data.
dimenticavo che mi dia la possibilita anche di stampare la ricevuta appena salvata x consegnarla al cliente ,n° 3[ copie.
mi scuso se chiedo troppo . :(
Questo programma lo sto facendo come autodidatta leggendo il vostro forum e andando ha copiare le macro e risistemarle per i miei fogli ma per questo non ho trovato niente (forse xchè compilo male le macro).
un grazie x il vostro aiuto
corrado62
Newbie
 
Post: 6
Iscritto il: 15/10/14 18:22

Sponsor
 

Re: problema ricevute in excels

Postdi Zer0Kelvin » 15/10/14 21:05

Caio.
Mi permetto di consigliarti di allegare un file Excel di esempio, altrimenti sarà difficile che ti vengano fornite soluzioni adeguate.
Naturalmente nel file ci deve essere anche la/le macro interessata/e.
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 388
Iscritto il: 08/04/12 11:23

Re: problema ricevute in excels

Postdi Anthony47 » 15/10/14 21:59

Ciao corrado62, benvenuto nel forum.
Non e' proprio chiarissimo che cosa hai gia' fatto e che cosa no, comunque provo a darti qualche spunto...
Per azzerare le celle prima di compilare una nuova ricevuta, registrati una macro mentre esegui manualmente la cancellazione di quelle celle; poi nella macro complessiva (di cui andiamo a parlare) inseriremo una riga Call Macro1 (supponendo che la macro registrata si chiami Macro1).
Quanto alla stampa di 3 copie del tuo foglio, registra una macro in cui lanci la stampa in 3 copie, poi nella macro complessiva inseriremo la riga Call Macro2.
Quanto a riportare su un file DatiRicevute.xlsm un tot di celle della ricevuta ultima preparata, la cosa piu' semplice e' che in un' area libera del tuo foglio ti crei, in N celle adiacenti, una copia dei valori che vuoi storicizzare; poi nella macro complessiva inserirai le istruzioni
Codice: Seleziona tutto
'Copia in DatiRicevute.xlsm:
Range("AA1:AG1").Copy      
Workbooks("DatiRicevute.xlsm").Sheets("Foglio1").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial _
    Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

La prima riga va personalizzata con il vero intervallo contenente le celle da copiare; la seconda con il vero nome foglio su cui vuoi storicizzare i dati delle ricevute.
Quanto a incrementare il numero della ricevuta, useremo le istruzioni:
Codice: Seleziona tutto
'Incremento numerazione:
ThisWorkbook.Sheets("RicevuteFiscali").Range("N1").value = ThisWorkbook.Sheets("RicevuteFiscali").Range("N1").value +1
Invece di N1 userai l' indirizzo della cella usata nel tuo modello.

A questo punto la macro complessiva sara' composta piu' o meno cosi':
Codice: Seleziona tutto
Sub Complessiva()
'>>Istruzioni per Copia in DatiRicevute.xlsm (vedi prima)
Call Macro2      'Stampa tre copie
'>>Istruzioni per Incremento numerazione (vedi prima)
Call Macro1      'Cancella i dati di una ricevuta stampata e salvata
End Sub

Associerai questa macro a un pulsante presente sul foglio RicevuteFiscali, in modo che la macro possa essere eseguita semplicemente premendo il pulsante.

Sono spunti su cui dovrai ovviamente ancora lavorare...
Comunque per ulteriori spunti dovresti allegare il file con il layout reale, come anche suggerito da Zer0K.

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

Re: problema ricevute in excels

Postdi corrado62 » 16/10/14 07:35

un grazie a tutti come mi diceva Zer0Kelvin allego link per il mio foglio http://www.filedropper.com/ricevutefiscaliddprova
ho inserito una macro per il contatore che avevo preparato in precedenza ,ma poi non riesco ha spostare i dati sul foglio ricevute
(questo foglio è stato inserito nello stesso foglio ,ma teoricamente deve stare fuori dal foglio RicevuteFiscali sara messo in una cartella di backup con altri fogli).
un grazie per l'aiuto
corrado62
Newbie
 
Post: 6
Iscritto il: 15/10/14 18:22

Re: problema ricevute in excels

Postdi Anthony47 » 16/10/14 13:52

Hai controllato che uso puoi fare delle informazioni che ti avevo dato ieri sera?

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

Re: problema ricevute in excels

Postdi corrado62 » 16/10/14 15:48

scusami se ti rispondo solo adesso sono in ufficio e ogni tanto guardo il forum
si le ho guardate in pausa pranzo stasera ci lavoro per il numero progressivo avevo già risolto penso :-( adesso vedo di provare ha portare i dati sul foglio archivio poi ti faccio sapere.
grazie x l'aiuto
corrado62
Newbie
 
Post: 6
Iscritto il: 15/10/14 18:22

Re: problema ricevute in excels

Postdi corrado62 » 16/10/14 22:51

ragazzi grazie
le macro è quasi tutta compilata al 85%, manca la stampa , e devo inserire un messaggio di input (dovrebbe essere il comando giusto) dove devo selezionare il pagamento ( contante o pos).
Una domanda stupida ma questa macro posso esportarla con il relativo comando e importarla per altri lavori andando a modificare i puntamenti delle celle, per utilizzarla su altri fogli senza fare copia e incolla (io penso di ) me lo potete confermare.
Grazie ;) ;) ;)
corrado62
Newbie
 
Post: 6
Iscritto il: 15/10/14 18:22

Re: problema ricevute in excels

Postdi Anthony47 » 18/10/14 02:20

Puoi "esportare" un Modulo del Vba (Menu /File /Esporta) e importare poi il relativo file (.bas) in un altro "progetto"; oppure (se e' tutto nello stesso Pc) puoi fare Copia /Incolla e nessuno si scandalizza.

Quali adattamenti vanno fatti al codice, una volta che la macro e' disponibile su un altro progetto, ovviamente devi valutarlo tu.

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

Re: problema ricevute in excels

Postdi corrado62 » 18/10/14 17:32

grazie x le info
corrado62
Newbie
 
Post: 6
Iscritto il: 15/10/14 18:22

Re: problema ricevute in excels

Postdi corrado62 » 11/11/14 17:54

un saluto ancora a tutti dopo impegni di lavoro mi sto dedicando ha questo foglio delle ricevute fiscali ma mi blocco per la stampa anzi quando deve stampare la stampante in rete si impalla . Ho provato con la stampante in Ufficio a praga non ancora a casa mia nel privato ma penso che sia uguale incollo la macro che ho creato.

Codice: Seleziona tutto
Sub incrementa()
MsgBox " ATTENZIONE LA RICEVUTA VIENE ARCHIVIATA"
Sheets("ricevute").Unprotect Password:="xxxxxx"
Range("C8").Copy
Sheets("ricevute").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Range("C7").Copy
Sheets("ricevute").Cells(Rows.Count, "B").End(xlUp).Offset(1, 0).PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Range("E23").Copy
Sheets("ricevute").Cells(Rows.Count, "C").End(xlUp).Offset(1, 0).PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Range("E24").Copy
Sheets("ricevute").Cells(Rows.Count, "D").End(xlUp).Offset(1, 0).PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Range("E25").Copy
Sheets("ricevute").Cells(Rows.Count, "E").End(xlUp).Offset(1, 0).PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Sheets("RicevuteFiscali").Select
Ok = MsgBox("Vuoi stampare la ricevuta prima che la cancello?", vbYesNo)
 If Ok = vbYes Then
 ActiveWindow.SelectedSheets.PrintOut From:=1, To:=2, Copies:=1
 Sheets("RicevuteFiscali").Select
 ElseIf No = vbCancel Then
 End If
MsgBox "CANCELLO I VALORI SULLA RICEVUTA"
Range("A11:A22").Select
Selection.ClearContents
Range("B11:B22").Select
Selection.ClearContents
Range("E24").Select
Selection.ClearContents
Range("e24").Value = 0
Range("C7").Value = Range("C7").Value + 1
MsgBox "IL NUMERO RICEVUTA E' CAMBIATO"
Sheets("ricevute").Protect Password:="xxxxx"
End Sub

penso che l'inghippo si trova in questo passaggio (ActiveWindow.SelectedSheets.PrintOut From:=1, To:=2, Copies:=1).

un grazie come sempre per l'aiuto.
dimenticavo come posso inserire una macro dove vado ha selezionare il pagamento esempio (contante o Pos ) e che mi copia nel mio (archivio ricevute) il flag contante o pos, in poche parole come la compilo .
un grazie mi serve solo una partenza poi piano piano la compilo io
corrado62
Newbie
 
Post: 6
Iscritto il: 15/10/14 18:22

Re: problema ricevute in excels

Postdi Anthony47 » 11/11/14 22:04

penso che l'inghippo si trova in questo passaggio (ActiveWindow.SelectedSheets.PrintOut From:=1, To:=2, Copies:=1)
Beh, se hai un problema di stampa ed elimini quella riga non ce l' avrai piu', ne' la stampa ne' il problema.
Come tentativo ti direi di inserire le istruzioni per selezionare la stampante; puoi usere queste, da inserire subito prima dell' ActiveWindow.SelectedSheets.PrintOut:
Codice: Seleziona tutto
'scegli printer
SelPrint = Application.Dialogs(xlDialogPrinterSetup).Show
If SelPrint = False Then
    MsgBox "Stampa Cancellata"
    Exit Sub
End If

Ma con quella stampante usando altri metodi di stampa (cioe' non da macro) non avete mai problemi, ne' da excel ne' da altri applicativi?
Una possibile alternativa e' la "stampa" su file pdf, usando una stampante virtuale (tipo PDFCreator) se usi vecchie versioni di Excel, o il File /Salva con nome in formato pdf nelle versioni piu' recenti di Excel.

Hai notato che usando il suggerimento che ti avevo dato il 15 Ott (il primo nel messaggio) puoi sostituire 15 righe di codice con 4?
Suggerisco inoltre di evitare di calcolare la riga su cui fare Paste Special colonna per colonna, sia perche' rischi di ottenere risultati diversi nel caso che una qualche colonna contenga una cella vuota (allineando quindi il contenuto su righe diverse), sia per l' ovvia inutilita' di ripetere un' operazione; quindi calcola la riga sulla colonna A (o su altra che sai non potra' mai essere vuota) e poi usa lo stesso numero su tutte le istruzioni di PasteSpecial. Questo nel caso che non ti piace usare le 4 righe e basta.

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


Torna a Applicazioni Office Windows


Topic correlati a "problema ricevute in excels":

problema blocco note
Autore: carlin
Forum: Software Windows
Risposte: 7

Chi c’è in linea

Visitano il forum: Nessuno e 48 ospiti