Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[Excel] Stampare elenchi con Vba

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

[Excel] Stampare elenchi con Vba

Postdi biancocandido55 » 03/03/06 13:42

E' la prima volta che scrivo e avevo bisogno del vostro aiuto, ho un problema che non riesco a risolvere da un bel pò di tempo, ho bisogno di stampare alcuni elenchi che contengono dati presi da una tabella in excell, mi servirebbe una routine che mi crei una numerazione progressiva in base ai nomi delle province italiane (inserite in una colonna della tabella in modo sparso), per ogni provincia le dia un numero progressivo che dovrà mantenere anche per le stampe successive, esempio:
Codice: Seleziona tutto
provincia di :  AGRIGENTO                   ELENCO N. :  1

RUOLO     COGNOME         NOME             N.ISCRIZ.
 RV           PINCO           MICHELE          1124558
 RD           PALLINO        SILVIO             1112236
 RD           TIZIO            ANTONIO         1225453
 RV           CAIO             MASSIMO         1452367
 RV           SEMPRONIO      MARCO            1478588
per 20 nominativi

data: (quella che sarà inserita al momento della stampa)

Codice: Seleziona tutto
provincia di :  AGRIGENTO                   ELENCO N. :  2

RUOLO    COGNOME         NOME             N.ISCRIZ.
 RV           SILVIO           GIOVANNI       14781558
 RV           ANCO             MARZIO          1112236
 RD           TULLIO           OSTILIO          1225453
per 20 nominativi

data: (quella che sarà inserita al momento della stampa)

questo vale per tutte le 105 province italiane che mi occorrono.

Il numero dell'elenco e la data che le verrà assegnata al momento della stampa andranno ad inserirsi in modo automatico nelle colonne elenchi e data della tabella sottostante

esempio:
Codice: Seleziona tutto
                          TABELLA DI INSERIMENTO DATI

RUOLO    COGNOME    NOME        N.ISCRIZ.   prov.     elenco  data elenco
 RV         SILVIO        GIOVANNI  14781558     AG         1        15/01/06
 RV         ANCO          MARZIO     1112236       BA         1        15/01/06
 RD         TULLIO        OSTILIO     1225453      CA         2        30/01/06
 RD         MENELAO     CARLO       1254788      AG         2         30/02/06
..........    ....                .....               .....         VI          ??         ????       

N.B. ?? = numerazione e data saranno inseriti al momento della stampa delle province

per ogni stampa degli elenchi ci sarà la stampa riassuntiva degli elenchi delle province
Codice: Seleziona tutto
N. BUSTA      PROVINCIA     ELENCO

       1           AGRIGENTO       3
       2           AGRIGENTO       4
       3           BARI                 2
       4           BARI                 3
       5           CAGLIARI          2
       6           COMO                5
      ....          .......                ....
      101         VICENZA           7
così via per tutte le province interessate al momento della stampa, grazie.
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Sponsor
 

Postdi Alexsandra » 04/03/06 22:04

Non sò se ho capito.
tu hai un foglio di excel e nella colonna A hai un dato,nella B il cognome etc.. così. se vuoi estrapolare dei dati usa il VBA. con un ciclo scorri tutto il foglio
(Do Until Sheets("nome_foglio").Cells(i, posiz ) = Empty) i=2 (nella 1° riga puoi mettere i titoli),posiz è la colonna sulla quale devi fare la ricerca,pertanto è un valore che devi passare tu.Usando la funzione Cerca.vert scorri tutta la lista nella colonna che desideri cercare(Provincia,età,ruolo etc..),quando la ricerca soddisfa i requisiti,copi la riga in un altro foglio provvisorio,calcoli l'area di stampa in base alle righe che hai scritto e lo mandi in stampa.
Non sò se è quello che vuoi fare,dovresti spiegare meglio il problema
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale.

Win7 + Office 2003 Ita
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

Postdi biancocandido55 » 06/03/06 09:41

Alexsandra, scusami se il problema ti sembra arzicocolato, proverò a spiegarmi meglio.
I fogli in questione sono 2:

Foglio 1 è per inserimento dati, dove si trovano anche 2 colonne vuote, una e la colonna " n. elenco" e l'altra è la colonna "data elenco".
(le 2 colonne vuote devono essere compilate dalla routine)

Foglio 2 sarà usato per ricerca dati di stampa elenchi, in questo caso inserisco una data e la routine deve cercare nel foglio 1 tutte le celle che hanno il dato "elenco n." e "data elenco" vuote.

trovate le suddette celle le deve compilare con la numerazione che avevo già spiegato in precedenza, raggrupparle nel foglio 2 e stamparle al massimo in 20 righe, elencandole per provincia , ovvero ad esempio:

data elenco <- la inserisco io

AGRIGENTO ELENCO N. 1 <- il numero lo iserisce la routine

20 righe di dati (cercati dalla routine dal foglio 1 e copiati sul foglio 2),
per poi essere stampati

spero di essere riuscito a spiegarlo bene (ci credo poco, ma spero di si). Sai sto scoprendo che non è facile farsi capire .

ti ringrazio per l'aiuto che mi stai offrendo. a presto ciao :)
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Postdi Alexsandra » 08/03/06 22:03

biancocandido55 ha scritto:Foglio 1 è per inserimento dati, dove si trovano anche 2 colonne vuote, una e la colonna " n. elenco" e l'altra è la colonna "data elenco".(le 2 colonne vuote devono essere compilate dalla routine)

1)Mancano i criteri di ricerca,o cerco per provincia,per ruolo per cognome ma un dato lo devi avere.
2)quando fai il primo ciclo
(le 2 colonne vuote devono essere compilate dalla routine)
al secondo non le trova più vuote e il programma si ferma
Foglio 2 sarà usato per ricerca dati di stampa elenchi, in questo caso inserisco una data e la routine deve cercare nel foglio 1 tutte le celle che hanno il dato "elenco n." e "data elenco" vuote.
trovate le suddette celle le deve compilare con la numerazione che avevo già spiegato in precedenza, raggrupparle nel foglio 2 e stamparle al massimo in 20 righe, elencandole per provincia


non può funzionare,oppure funziona al 1° ciclo ma dopo che hai scritto le 2 colonne non le trova più vuote
dovresti dire cosa vuoi fare,cioè vuoi un elenco con una serie di dati e trovare questi dati in base a?????(provincia,ruolo etc...) trovati questi dati li stampi. inserendo la data stampa e il n° elenco (a cosa ti serve)

Spiega meglio quello che vuoi fare senza spiegare il metodo,ma solo quello che deve fare il programma,vediamo se così riusciamo a capirci
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale.

Win7 + Office 2003 Ita
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

Postdi biancocandido55 » 09/03/06 10:01

Alexsandra, premetto che non ho mai usato il VBA in excell ( :oops: :x grave e grande pecca )
volendo imparare ad usare il VBA ho deciso (se non ti crea problemi)
di fare un passo alla volta :roll: , cercando il modo più semplice
per risolvere il problema che ho con questa tabella,
ho constatato che il 2° foglio non mi serve più.

il criterio di ricerca interessa la colonna delle province,
quindi la routine deve agire in questo modo:

Cercare nella colonna province tutte quelle che hanno la stessa sigla
raggrupparle fino ad un massimo di 20 righe per provincia
numerare, come avevo già cercato di spiegare in precedenza

questo vale per tutte e 105 le province

i prospetti finali di stampa li avevo esposti in precedenza ma preferisco rimandare in un altro momento

ti ringrazio come sempre :)

e rimango in attesa di un tuo prossimo messaggio.

Grazie, ciao.
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Postdi Alexsandra » 09/03/06 14:40

@biancocandido55
Più o meno ho capito quello che vuoi fare,stasera vedo di buttare giù qualcosa e poi te lo posto,dopo mi dici se và bene per il tuo problema
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale.

Win7 + Office 2003 Ita
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

Postdi biancocandido55 » 12/03/06 14:37

Alexsandra,
scusami se ti ho risposto solo adesso, ma sono stato impegnato.
ti ringrazio e rimango in attesa degli sviluppi di qusta routine.

grazie ciao
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Postdi Alexsandra » 18/03/06 08:14

Una cosa volevo sapere
1) nel tuo elenco hai più di 20 nominativi della stessa provincia?
2) n° elenco verrà sovrascritto ad ogni stampa ?
3)la data elenco è la data in cui inserisci il nominativo o ti riferisci alla data di stampa?
Io ti avrei buttato giù qualcosa se mi chiarisci quanto sopra ti posto il file
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale.

Win7 + Office 2003 Ita
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

Postdi biancocandido55 » 20/03/06 08:28

Ciao Alexsandra,

punto 1.
quando inserisco i nominativi possono essere più di 20 per ogni provincia.

punto 2.
n° elenco verrà si sovrascritto ad ogni stampa (*)

punto 3.
per la data dell'elenco mi riferisco alla data di stampa.

(*)
chiaramente la numerazione deglio elenchi deve rimanere memorizzata nella tabella una volta svolta la routine


ciao e grazie :)

a presto
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Postdi Alexsandra » 24/04/06 19:13

Finalmente ci siamo. La struttura che ho fatto è questa http://freefilehosting.net/bin/?id=pNH2kqTQ
Chiarimenti :
1) quando lanci la stampa vuoi stampare 1 foglio per ogni provincia?

PS. mandare in stampa in un ciclo unico 105 fogli è probabile che la stampante ti crea dei problemi. Visto che devi stampare solo Ruolo,Cognome e Nome e n° iscrizione và bene per tè stampare una provincia sul lato Sx , 1 Sul lato Dx del foglio e poi andare a capo e ripetere l'operazione?
In pratica sullo stesso foglio ti ritrovi la stampa di più provincie.

L'esecuzione del ciclo poi scrive nel foglio principale elenco 1 e la data di stampa.
Fammi sapere Ciao
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

stampare elenchi con vba

Postdi biancocandido55 » 26/05/06 09:02

Ciao carissima Alexsandra,

per prima cosa voglio scusarmi con te per non averti risposto subito :oops: , ma ho avuto problemi familiari :x , bando ai discorsi cominciamo ;) :) ,

SI ogni foglio una provincia, quindi ciclo di stampa per 105 provincie, è lunga lo so e persino in triplice copia con ciliegina sulla torta anche la stampa riepilogativa per la distinta postale.

In effetti si tratta di spedire questi elenchi con le relative documentazioni,

una copia dell'elenco mi rimane come minuta,
2 copie elenchi partono per le provincie,
una delle 2 copie partite mi ritorna per ricevuta.

In più ci sarebbe come gia detto la stampa riepilogativa degli elenchi delle provincie che sono state spedite per la distinta postale in 2 copie.

E' un vero e proprio servizio di spedizione posta.

Spero di non essere stato rindondante nelle spiegazioni, salutoni

Ciao,
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Postdi Alexsandra » 26/05/06 15:45

Ti costa cara questa procedura :lol: :lol: :lol:
Ad ogni invio in stampa ti fermo il programma per 4/5 secondi poi vedi con la tua stampante e caso mai aumenti il timer per non riempire la cosa di stampa,altrimenti ti devo mettere un inputbox ad ogni stampa ma sarebbe noiosa la cosa.
Ora ti finisco la procedura e poi te la posto
Ciao
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale.

Win7 + Office 2003 Ita
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

[excel] stampa elenchi con vba

Postdi biancocandido55 » 26/05/06 17:22

Cara Alexsandra,
sono sempre debitore ti ringrazio e rimango in attesa, abbracci e saluti a lunedì,
ciao, :lol: ;)
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Postdi Alexsandra » 02/06/06 17:27

Mi servono un paio di chiarimenti
1) Non puoi inserire più di 62 nominativi [(Cognome,nome,ruolo e n°iscrizione) x 62 volte]
2) Mi risulta che le provincie siano 103 e non 105 (controlla L'Allegato caso mai modifica e riposta corretto)

Ti và bene così ??

PS.
Inserimento dati tramite Form (tutti a "manina" :lol: :lol: :lol: :lol: 105x20=2.100)
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale.

Win7 + Office 2003 Ita
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

[stampa elenchi con vba]

Postdi biancocandido55 » 02/06/06 23:08

Ciao Alexsandra,
mi chiedi:
1) Non puoi inserire più di 62 nominativi [(Cognome,nome,ruolo e n°iscrizione) x 62 volte]
non ho capito la richiesta,:?::?::?::-?

2) Mi risulta che le provincie siano 103 e non 105 (controlla L'Allegato caso mai modifica e riposta corretto)


la numerazione di allora fù forfait,

PS.
Inserimento dati tramite Form (tutti a "manina" 105x20=2.100)
hai ragione è proprio così :) :) :) :)
a presto e grazie ciao,

PS
per chiarimenti leggi il pvt
biancocandido55
Utente Senior
 
Post: 305
Iscritto il: 03/03/06 10:15

Postdi Alexsandra » 03/06/06 07:34

Guarda questa immagine all'interno ho messo i chiarimenti
http://freefilehosting.net/bin/?id=pd32m6nb
PS. è un pò lento Freefile in questi giorni
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale.

Win7 + Office 2003 Ita
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Stampare elenchi con Vba":


Chi c’è in linea

Visitano il forum: Nessuno e 5 ospiti