Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Access - Ciclo con Do Loop
lunedì 04 agosto 2008 - 22.34
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ghighi
Profilo
| Newbie
9
messaggi | Data Invio:
lun 4 ago 2008 - 22:34
Ciao, primo post e ovviamente prima domanda magari stupida!
Provo a spiegarmi,
ho un db molto rudimentale in cui attraverso una maschera genero dei report in pdf, questi report sono filtrati in base ad un valore selezionato in una casella di riepilogo, il file pdf viene nominato con il nome filtrato. Per capirci, Seleziono Pippo nella casella combinata e cliccando su di un tasto mi esce un file che si chiama Pippo.pdf
Avendo un elenco lungo di voci nella casella di riepilogo volevo fare un ciclo do until loop in modo che la selezione delle voci nella casella di riepilogo e il "click" del pulsante sia fatto in automatico per tuttr le voci dell'elenco.
Spero di essere stato chiaro e ringrazio in anticipo chi voglia provare ad aiutarmi!!!
Ghighi
Dainesi
Profilo
| Senior Member
476
messaggi | Data Invio:
gio 7 ago 2008 - 08:38
>Ciao, primo post
Benvenuto !
Inutile fare un ciclo Do until (a meno che tu stia leggendo un recordset). Usa invece un bel For ... Next che cicla tutti gli elementi contenuti nella lista.
Es.
Dim i as Integer
For i =0 to Lista.ListCount-1
'Metti qui la tua procedura di stampa
Call StampaPDF(Lista.ItemData(i))
Next
ghighi
Profilo
| Newbie
9
messaggi | Data Invio:
mer 27 ago 2008 - 18:14
Ciao DAINESI e a tutti!
Grazie mille per la risposta.
Scusa se non ho più risposto ma ho avuto il pc in panne e con le ferie non ho potuto sistemarlo prima..
Non sono riuscito a risolvere, premesso che sono ignorantissimo in materia...
Ok per il for next avendo i valori in una casella combinata, il mio problema ora è questo, il nome del file pdf si genera in base alla selezione che facevo nella casella combinata, come faccio a ottenere lo stesso anche nel ciclo senza il reale click sul nome?
Grazie ancora!!!
Dainesi
Profilo
| Senior Member
476
messaggi | Data Invio:
mer 27 ago 2008 - 19:55
Sulla base dell'esempio che ti avevo postato puoi modificarlo così per ottenere il testo della scelta nella lista
Dim i as Integer
For i =0 to Lista.ListCount-1
'Metti qui la tua procedura di stampa
Call StampaPDF(Lista.List(i) & ".pdf")
Next
ghighi
Profilo
| Newbie
9
messaggi | Data Invio:
mer 27 ago 2008 - 21:20
Sulla base dell'esempio che ti avevo postato puoi modificarlo così per ottenere il testo della scelta nella lista
Dim i as Integer
For i =0 to Lista.ListCount-1
'Metti qui la tua procedura di stampa
Call StampaPDF(Lista.List(i) & ".pdf")
Next
Spero di non abusare della tua gentilezza..
Questo è quello che ho:
Private Sub Comando32_Click()
Dim DESAGE As Integer
Dim blRet As Boolean
For NOMEFILE = 0 To CCNome.ListCount - 1
blRet = ConvertReportToPDF(Me.Scelta_RPT, vbNullString, CCNome.List(NOMEFILE) & ".pdf", False, False, , "", "", 0, 0)
Next
End Sub
Mi da errore: Impossibile trovare il metodo o il membro dei dati (errore 461)
Scusami se ti stresso...
Dainesi
Profilo
| Senior Member
476
messaggi | Data Invio:
mer 27 ago 2008 - 21:57
Domanda: ma che versione usi di Access ?
ghighi
Profilo
| Newbie
9
messaggi | Data Invio:
mer 27 ago 2008 - 22:22
ACCESS 2000
Sono un troglodita..
Dainesi
Profilo
| Senior Member
476
messaggi | Data Invio:
gio 28 ago 2008 - 08:31
Access 2000 è fantastico! Non ti preoccupare.
Modifica il codice così:
Private Sub Comando32_Click()
Dim DESAGE As Integer
Dim blRet As Boolean
For NOMEFILE = 0 To CCNome.ListCount - 1
blRet = ConvertReportToPDF(Me.Scelta_RPT, vbNullString, CCNome.Column(1,NOMEFILE) & ".pdf", False, False, , "", "", 0, 0)
Next
End Sub
Purtroppo io uso sopratutto VB e il VBA di Access (chiamato anche "AccessBasic") è leggermente diverso.
ghighi
Profilo
| Newbie
9
messaggi | Data Invio:
gio 28 ago 2008 - 10:21
Grazie mille!!! Ora funziona, sei stato gentilissimo! Ti chiedo un altro consiglio, per imparate ad usare decentemente VBA pensi sia meglio un libro o continuare ad usarlo e chiedere aiuto quando ci si pianta? Te lo chiedo perchè finora con i libri ho poco feeling, nel senso che non trovo mai quel che mi serve.
Grazie ancora,
Ghighi
Dainesi
Profilo
| Senior Member
476
messaggi | Data Invio:
gio 28 ago 2008 - 13:03
Avere un manuale di riferimento è sempre meglio anche se poi nella pratica mancano sempre esempi per le cose che uno vorrebbe fare (i soliti casi particolari ...). Io di solito faccio così: vado in una libreria informatica, sfoglio parecchi libri simili sull'argomento e scelgo quello che mi sembra meno superficiale. Quando poi sorgono dei dubbi ... ci sono i forum!
P.S. Io personalmente preferisco i testi in lingua originale piuttosto che i tradotti (questi ultimi infatti molto spesso sono "accorciati", rimaneggiati e sopratutto sono "postumi")
ghighi
Profilo
| Newbie
9
messaggi | Data Invio:
gio 28 ago 2008 - 15:43
>Avere un manuale di riferimento è sempre meglio anche se poi
>nella pratica mancano sempre esempi per le cose che uno vorrebbe
>fare (i soliti casi particolari ...).
Ah meno male non succede solo che a me!
>Io di solito faccio così:
>vado in una libreria informatica, sfoglio parecchi libri simili
>sull'argomento e scelgo quello che mi sembra meno superficiale.
>Quando poi sorgono dei dubbi ... ci sono i forum!
>
>P.S. Io personalmente preferisco i testi in lingua originale
>piuttosto che i tradotti (questi ultimi infatti molto spesso
>sono "accorciati", rimaneggiati e sopratutto sono "postumi")
Capisco...
Vabbeh.. lo ammetto.. oltre che con vba sono una frana anche con l'inglese!!!
Scherzi a parte, grazie mille sei stato utilissimo e gentile, seguirò il tuo consiglio!
A presto,
Ghighi
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !