Newsgroup: it.comp.appl.access
Titolo: report oltre 9999 pagine

ho creato un report di 10370 pagine e riesco a visualizzarle in anteprima, 
ma quando mando in stampa da pagina a pagina mi lascia arrivare fino a 9999 
(4 caratteri). come si fa a stampare dalla 10000 alla 10370? grazie 


Da codice:
DoCmd.PrintOut acPrintAll, dapagina, apagina, acMedium, 1, True
Ciao, Carlo 

 ha scritto nel 
messaggio news:%FVie.1407365$35.52...@news4.tin.it...

ciao e grazie. Ho inserito il codice su attivazione del report:
Dim strInput As String, strMsg As String, strMsg1 As String, dapagina As 
Long, apagina As Long
    strMsg = "Immettere la pagina DALLA quale  stampare"
    strMsg1 = "Immettere la pagina ALLA quale  stampare"
    dapagina = InputBox(Prompt:=strMsg, Title:="Informazioni utente", 
XPos:=2000, YPos:=2000)
    apagina = InputBox(Prompt:=strMsg1, Title:="Informazioni utente", 
XPos:=2000, YPos:=2000)
    MsgBox "Stampa dalla " & dapagina & " alla pagina " & apagina
    DoCmd.PrintOut acPages, dapagina, apagina, acMedium
la cosa strana é che se ho 10 pagine nel report e metto stampa da 1 a 2, poi 
in anteprima report vedo solo 8 pagine (?!??!), ma questo può non essere un 
problema. Invece il casino é che devo inviare la stampa o alla USB1 o alla 
USB2 o alla USB3 o alla USB4. E' possibile gestire la porta a cui mandare la 
stampa? grazie Matteo

 ha scritto nel messaggio 
news:d6hpvn$34u$1...@balena.cs.interbusiness.it...

Creati una barra dei menù personalizzata con i pulsanti che eseguono le 
routine appropriate e la associ al o ai report.
Importante è che il report contenga nella sezione piè di pagina pagina un 
controllo con ="Pagina " & [Page] & " di " & [Pages]. Questo controllo lo 
puoi ridurre al minimo se non ti interessa visualizzarlo, ma deve esserci.
Personalmente scrivo anche:
Private Sub Report_Page()
On Error Resume Next
PgReport = Me.Pages
End Sub
dove PgReport è una variabile globale di tipo integer che mi serve per 
sapere quante pagine contiene il report.
Ho anche un'altra variabile globale di tipo string: MioReport; che viene 
inizializzata su apertura del report e che fornisce il nome del report 
stesso.
Le due variabili globali sono ovviamente in un modulo pubblico.
Private Sub Report_Open(Cancel As Integer)
MioReport = Me.Name
DoCmd.Maximize
End Sub
Poi nella barra dei menù personalizzata un pulsante mi esegue questa 
funzione pubblica:
Function MStampaR()
On Error GoTo MStampaR_Err
    Dim DA As Integer, A As Integer
    On Error Resume Next
    DA = InputBox("Il report contiene " & PgReport & " pagine " & Chr(13) & 
Chr(13) & "Immetti il numero di pagina iniziale da stampare.", "Stampa da 
pagina...", 1)
    If DA = 0 Then Exit Function
    A = InputBox("Immetti il numero di pagina finale da stampare.", "A 
pagina...", 1)
    If A = 0 Then Exit Function
    DoCmd.SelectObject acReport, MioReport
    DoCmd.PrintOut acPrintAll, DA, a, acLow, 1, True
MStampaR_Exit:
    Exit Function
MStampaR_Err:
    MsgBox Error$
    Resume MStampaR_Exit
End Function
Per quanto riguarda la porta su cui stampare puoi utilizzare altrettanti 
stampanti collegate alle diverse porte e impostarne una come predefinita a 
seconda del bisogno. Per questo vai a 
www.sitocomune.com
 dove troverai come 
gestire la stampante predefinita.
Facci saspere.
Ciao, Carlo