Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [ACCESS/VBA] - Formattazione Report

    In anteprima di stampa mi dice: "Utilizzo di questo metodo non consentito nella visualizzazione corrente"


    xchè?

    Io devo far vedere i campi del piè di pagina pagina report sempre e visualizzare i valori di tali campi solo sull'ultima pagina del report.

    Private Sub SezionePièDiPaginaPagina_Format(Cancel As Integer, FormatCount As Integer)
    If (Me.Page = numpag) Then
    Me.Vettore.SetFocus
    Me.Vettore.Text = "" 'Metodo incriminato
    End If
    End Sub

    Grazie 1000

    P.S. Mi dite come si fa a formattare il testo VBA nel forum?

  2. #2
    Ho inserito nel report 1 casella di testo e a questo controllo mi da la possibilità di modificarne il contenuto, mentre i controlli nel piè di pagina no (i valori di tali controlli derivano da 1 query)


    Ho provato anche a nascondere la casella di testo ma oltre a quella mi nasconde anche l'etichetta che non deve essere nascosta
    La cosa strana è che quando eseguo il codice, con 1 report di 2 pagine, dopo le prime 2 pagine formattate, ritorna alla prima con la conseguenza che nasconde anche il controllo sulla prima pagina.

    Private Sub SezionePièDiPaginaPagina_Format(Cancel As Integer, FormatCount As Integer)

    MsgBox "pagina del report : " & Me.Page
    If (Me.Page = numpag) Then
    MsgBox "Valore di vettore: " & Me.Vettore & ""

    Me.Vettore.Visible = False
    End If
    End Sub

    Non so dove sbattere la testa sto provando di tutto

  3. #3
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Fammi capire: tu hai un TOT di pagine, mettiamo 5. Tu vuoi che nelle 5 pagine appaia il nome del campo senza valore ( in pratica solo l'etichetta...in questo caso ti consiglio di mettere tu un etichetta dagli strumenti....), però vuoi che appaia il valore SOLO nell'ultima pagina. Se è così, puoi benissimo utilizzare il Piè di report che ti fa il tutto automaticamente ( in pratica ti scrive il tutto nell'ultimo spazio disponibile). Spero sia questo il problema, altrimenti ripostami il quesito. Ciao.

  4. #4
    Se metto tutto nel piè pagina report e non nel piè pagina pagina, sulle n-1 pagine del report non stampa le etichette dei controlli. Il cliente vuole che tutti i campi vengano stampati e solo sull'ultimo foglio devono essere visualizzati i valori dei controlli del piè di pagina. Su 1 manuale c'era scritto che si doveva operare usando l'evento format ma non funziona come dovrebbe. Nel codice riportato nel primo messaggio riesco a leggere il valore del controllo ma non a modificarlo, xchè?. Ho provato ad aggiungere 1 casella di testo che non aveva come origine dati la query usata x il report e tutto funzionava (lettura/scrittura). Perchè con i controlli che hanno come origine dati 1 query non mi permette di scrivere ?. Il report in questione è stato fatto in autocomposizione usando la query come origine dati.
    Penso sia 1 vizio di forma ma non so quale sia e sono bloccato da alcuni giorni x questo. CIAO

    Ogni suggerimento è ben accetto

  5. #5
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Posta il report........

  6. #6
    Nel codice manca solo il controllo x gestire il caso in cui il # di record sia <= al # di record visualizzabili in una sola pagina del report. Ti invio 1 msg privato con la foto del report. CIAO

    ************************************************** ********
    Private Sub Report_Open(Cancel As Integer)
    Dim numrec As Integer

    numrec = contarecord()
    numpag = (numrec / 15) + 1

    End Sub
    ************************************************** ********
    Private Sub Report_Page()
    Dim obj As AccessObject, ctr As Control

    Me.DrawWidth = 2
    Me.Line (8, 4250)-(10, 11280)
    Me.Line (3260, 4680)-(3260, 11280)
    Me.Line (4605, 4680)-(4605, 11290)
    Me.Line (5870, 4680)-(5870, 11290)
    Me.Line (6480, 4680)-(6480, 11280)
    Me.Line (7170, 4680)-(7170, 11280)
    Me.Line (8510, 4680)-(8510, 11290)
    Me.Line (10150, 4670)-(10150, 11290)

    End Sub

    ************************************************** *************
    Private Sub SezionePièDiPaginaPagina_Format(Cancel As Integer, FormatCount As Integer)

    MsgBox "pagina del report : " & Me.Page
    If (Me.Page = numpag) Then
    MsgBox "Valore di vettore: " & Me.Vettore & ""

    Me.Vettore.Visible = False
    End If
    End Sub

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.