Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Macro per stampare

Ultimo Aggiornamento: 02/08/2018 10:35
Post: 1
Registrato il: 30/07/2018
Città: IMPERIA
Età: 52
Utente Junior
excel 2007
OFFLINE
30/07/2018 18:34

Buongiorno.
Cortesemente, avrei bisogno un aiuto per scrivere una macro che in una cella del foglio 1 inserisca in successione i numeri da 1 a 150 e quindi stampi il foglio 3, che sarà di volta in volta modificato con il "progredire" dei numeri nel foglio 1.
Grazie a coloro i quali potranno darmi qualche suggerimento.
Post: 3.105
Registrato il: 03/04/2013
Utente Master
Excel 2000 - 2013
OFFLINE
30/07/2018 18:58

Buona sera, Bonellopseudo;
la tua richiesta è orfana di alcuni dettagli.
-    In quali Celle vengono inseriti i numeri da 1 a 150?
-    Il "Foglio3" deve essere stampato ogni volta che viene inserito un nuovo numero?

Chiariti questi punti, si potrebbe pensare ad un "Evento" che intervenga in modo appropriato.

P.s. A margine di quanto sopra, visto che questo è il tuo primo post, nel darti il benvenuto, ti ricordo che è buona norma allegare un File, senza Dati sensibili, con alcuni Record significativi già inseriti e chiarissi ciò che desideri ottenere.


Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 1
Registrato il: 30/07/2018
Città: IMPERIA
Età: 52
Utente Junior
excel 2007
OFFLINE
30/07/2018 19:29

Macro per stampare
Mi scuso per il disguido.
Nella cella D4 del foglio 1 "Gestione", dovrebbero susseguirsi progressivamente i numeri da 1 a 150 e, per ogni numero che appare in D4, si dovrebbe stampare il foglio 3 "Ricevuta".
Quindi, 150 stampe in tutto, in base alla successione automatica dei numeri.
Spero di aver chiarito e grazie per la disponibilità.
Post: 3.106
Registrato il: 03/04/2013
Utente Master
Excel 2000 - 2013
OFFLINE
30/07/2018 20:44

Buona sera, Bonellopseudo;
grazie della tua attenzione.

Un'ultima domanda, ho notato che il File in allegato ha estensione .xls, quindi hai utilizzato Excel 2000 o Excel 2003 mentre nel tuo profilo dichiari Excel 2007.

Qual'è la versione di Excel che intendi utilizzare?

Chiarito quest'ultimo punto, potrei pensare al'Evento "Worksheet_Change" che intervenga in modo appropriato.



Buona serata.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 2
Registrato il: 30/07/2018
Città: IMPERIA
Età: 52
Utente Junior
excel 2007
OFFLINE
30/07/2018 20:54

Macro per stampare
Sì, in effetti il file è stato creato con una versione di excel precedente, ma di solito utilizzo la 2007 e vorrei utilizzarla anche stavolta, se possibile.
Grazie
Post: 3.107
Registrato il: 03/04/2013
Utente Master
Excel 2000 - 2013
OFFLINE
31/07/2018 06:51

Buona giornata, Bonellopseudo;
potresti provare a modificare il tuo Codice VBA "stRicevuta" più o meno in questo modo:

Sub stRicevuta()
'
' stRicevuta Macro
' Stampa Ricevuta
'
' Scelta rapida da tastiera: CTRL+r
'
    For x = 1 To 150
        Cells(4, 4).Value = x
        Sheets("Ricevuta").Select
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
        Sheets("Gestione").Select
    Next x
End Sub


Dovrebbe funzionare, anche se personalmente avrei previsto due Celle nelle quali indicare la Ricevuta dalla quale partire e l'ultima Ricevuta da stampare.

Voglio dire, pensando di utilizzare, nel Foglio di lavoro "Gestione" le celle:
- D3 nella quale indicare la prima "Ricevuta" da stampare
e
- E3 nella quale indicare l'ultima "Ricevuta" da stampare
volendo stampare tutte le ricevute dalla 1 alla 150 in:
- D3 scriverai 1
e
- E3 scriverai 150

Supponendo di dover ristampare solo le ricevute 3, 4 e 5 in:
- D3 scriverai 3
e
- E3 scriverai 5

Il Codice VBA andrebbe modificato di conseguenza evitando, in una eventuale ristampa, di stampare anche le rivevute che non servono.



A disposizione.

Buon Lavoro.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 3
Registrato il: 30/07/2018
Città: IMPERIA
Età: 52
Utente Junior
excel 2007
OFFLINE
31/07/2018 10:04

Macro per stampare
Grazie Giuseppe, funziona perfettamente !

Credi che sarebbe possibile fare in modo che il numero massimo (150) corrisponda al numero più grande della colonna A del foglio ATLETI (nell'esempio avrebbe dovuto corrispondere a 3, che poteva leggersi sulla riga 9 del foglio ATLETI)?
Molte grazie
Post: 3.108
Registrato il: 03/04/2013
Utente Master
Excel 2000 - 2013
OFFLINE
31/07/2018 11:41

@Bonellopseudo, chiede:


Credi che sarebbe possibile fare in modo che il numero massimo (150) corrisponda al numero più grande della colonna A del foglio ATLETI (nell'esempio avrebbe dovuto corrispondere a 3, che poteva leggersi sulla riga 9 del foglio ATLETI)?


Buona giornata, Bonellopseudo;
ci possono essere diversi sistemi, uno di questi potrebbe essere:

Sub stRicevuta()
'
' stRicevuta Macro
' Stampa Ricevuta
'
' Scelta rapida da tastiera: CTRL+r
'
    
    
    With Worksheets("ATLETI")
    For x = 1 To .Range("A" & .Rows.Count).End(xlUp).Row - 6
        Cells(4, 4).Value = x
        Sheets("Ricevuta").Select
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
            Sheets("Gestione").Select
    Next x
    End With
End Sub

Sicuramente non è il modo più "elegante" ma dovrebbe funzionare.



A disposizione.

Buon Lavoro.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 4
Registrato il: 30/07/2018
Città: IMPERIA
Età: 52
Utente Junior
excel 2007
OFFLINE
01/08/2018 23:04

Macro per stampare
Grazie Giuseppe !!

Funziona (quasi) perfettamente.
Non capisco per quale motivo, ma non stampa in corrispondenza dell'elemento n.1 (Foglio Atleti cella A7, valore 1), che comunque riesco a stampare manualmente.
Per il resto funziona come richiesto.

Grazie ancora.
Post: 3.111
Registrato il: 03/04/2013
Utente Master
Excel 2000 - 2013
OFFLINE
02/08/2018 00:28

@Bonellopseudo, scrive:


Funziona (quasi) perfettamente.
Non capisco per quale motivo, ma non stampa in corrispondenza dell'elemento n.1 (Foglio Atleti cella A7, valore 1), che comunque riesco a stampare manualmente.
Per il resto funziona come richiesto.




Buona giornata, Bonellopseudo;
nel mio lessico il "quasi" non esiste; fammi capire meglio il problema e vedo quello che si può fare.

I miei test li ho condotti sul File allegato in #3, se è cambiata la struttura allega il nuovo File; grazie.



A disposizione.

Giuseppe

Windows XP - Excel 2000
Windows 10 - Excel 2013
Post: 5
Registrato il: 30/07/2018
Città: IMPERIA
Età: 52
Utente Junior
excel 2007
OFFLINE
02/08/2018 10:35

Macro per stampare
Ciao Giuseppe.

Stamattina ho fatto dieci test scaricando anch'io il file da me stesso allegato.

In nove casi ha funzionato perfettamente; in un caso invece no.
Mi spiego: avevo quindici nominativi, numerati progressivamente nella colonna A del foglio Atleti; mi aspettavo quindi che stampasse quindici ricevute iniziando dalla prima fino alla quindicesima.
Nove volte la macro ha funzionato, la decima ha stampato due volte la ricevuta abbinata al quindicesimo nominativo (prima e ultima stampa) e non quella abbinata al primo.

A parte questa "stranezza", ribadisco che funziona bene e ti ringrazio molto perché hai semplificato il mio lavoro [SM=x423028]
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 22:56. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com