VIsualizzare recordset di una form "foglio dati"

di il
15 risposte

VIsualizzare recordset di una form "foglio dati"

Salve a tutti,
ho creato una maschera in formato "foglio dati" e per questo posso fare le varie query con le opzioni poste sull'intestazione colonne (ORdina dalla A lla Z...ordina dalla Z alla A .. "contine la stringa " ..." diverso da" ecc....)
Il problema è che non posso lanciare il relativo report in base alla query che ho effettuato con le opzioni di cui sopra.
La soluzione sarebbe quella di captare il recordset della query fatta con le opzioni di cui sopra e darlo in pasto al mio report.

Sapete come fare ?

Grazie

15 Risposte

  • Re: VIsualizzare recordset di una form "foglio dati"

    Non sono sicuro della risposta...Quando tu vai a smanettare con i filtri che hai indicato, nella proprietà Filter della maschera si è costruita una stringa. Con un piccolo codice VBA, quando vai ad aprire il report (evento "Su apertura" o "Su caricamento"...oppure "Su filtro" o "Su applicazione filtro"...boh...fai un po' di prove...), imposta la proprietà Filter del report con la stessa stringa del Filter della maschera. Probabilmente devi anche aprire il FilterOn=True.
    Sono stato un po' volgare nell'esposizione, ma credo che su questa via stia la logica da mettere in campo.
  • Re: VIsualizzare recordset di una form "foglio dati"

    Grazie100000

    ho fatto come mi hai detto!!!! risolto!!!
  • Re: VIsualizzare recordset di una form "foglio dati"

    Ho cantato vittoria troppo presto.. mi dice che non è giustop il filtro che gli invio
  • Re: VIsualizzare recordset di una form "foglio dati"

    Mostra il codice VBA.
  • Re: VIsualizzare recordset di una form "foglio dati"

    Ti spiego... non è il codice errato ma la stringa che questo codice passa al report.
    Dim fff As String
    fff = Form_SottomArc.Filter
    DoCmd.OpenReport "archivio", acViewPreview, , fff

    il filtro che il codice passa ala report è questo ... sottomarc.reparto="u200" invece dovrebbe passare reparto='u200'
  • Re: VIsualizzare recordset di una form "foglio dati"

    Ho quasi risolto con il replace degli apici doppi con il ' e il nome form con il nullo... ti aggiorno se avrò altri problemi..intanto grazie
  • Re: VIsualizzare recordset di una form "foglio dati"

    Per sfruttare l'argomento Condizione WHERE di OpenReport occorre la sintassi adeguata. Non chiarisci se il filtro che vuoi passare è "relativamente semplice", in questo caso puoi utilizzare Condizione WHERE, quindi l'adeguata sintassi con apici singoli.
    Invece io ho capito che tu, volta per volta, hai un filtro sempre diverso/variegato/complesso a seconda dello smanettamento precedente.
    Ho fatto un test così, dalla maschera faccio un clic di pulsante e passo una stringa in OpenArgs:
    Private Sub ReportEventi_Click()
    DoCmd.OpenReport "Eventi", acViewPreview, , , , "FiltroMaschera"
    End Sub
    Su caricamento del report ho scritto:
    Private Sub Report_Load()
    If Me.OpenArgs = "FiltroMaschera" Then
        Me.FilterOn = True
        Me.Filter = Forms!Eventi.Filter
    End If
    End Sub
    A me ha funzionato.
  • Re: VIsualizzare recordset di una form "foglio dati"

    Ti ringrazio ho risolto con il replace ma ora mi si presenta un problema più serio...
    in modo del tutto random quando smanetto sulle opzioni in testa alle colonne per fare le query mi si chiude la form e anche il file di access.

    questa è dura...perche senza la form aperta in modalità "foglio dati" non posso fare le query complesse.

    E' un baco di access? è il mio accdb access che è sputtanato? le sto provando tutte ho anche creato una semplice form in modalità foglio dati ma il pèroblema mi si presenta lo stesso in modo random...

    ora provo a togliere la formattazione condizionale su 2 celle ma dubito che basterà
  • Re: VIsualizzare recordset di una form "foglio dati"

    Puoi mostrare il codice completo?
    Hai provato la mia soluzione? Io ho ipotizzato il clic di un pulsante (possibile solo su maschera singola o maschera continua), ma se tu sei in maschera foglio dati, quale evento hai scatenato?
    La formattazione condizionale non centra nulla con il codice VBA.
    Fai attenzione quando scrivi codice:
    - clicca in basso al rettangolo dove si scrivono i messaggi sul tasto "Editor completo & Anteprima"
    - il codice VBA selezionalo tutto, poi clicca sul tasto in alto </> per farlo apparire con i tipici caratteri monotype più familiari ai programmatori.
  • Re: VIsualizzare recordset di una form "foglio dati"

    No forse non mi sono spiegato.
    non è questione di codice... il mio primo quesito me lo hai risolto ma (già da prima che tu mi scrivessi) si presenta il problema che ti ho scirtto... ho tolto tutto il codice che avevo creato nella form precendente e creato una nuova form senza codice da aprire come foglio dati per vedere se il problema si ripresentava ma non è servito a nulla

    quando smanetto sulle opzioni di query in testa alle colonne ..dopo un po mi si chiude il progetto access
  • Re: VIsualizzare recordset di una form "foglio dati"

    Non voglio cantar vittoria ma forse era proprio la formattazione condizionale che si basava su diversi dcount .
    tolte quelle il problema è fino ad ora scomparso
  • Re: VIsualizzare recordset di una form "foglio dati"

    No niente da fare ..
  • Re: VIsualizzare recordset di una form "foglio dati"

    Che sia il modo di popolare la sotto form che mi si chiude?

    5 Set rs2 = CurrentDb.OpenRecordset("select * from archivio where archivio <>'' order by item")
    6 Set Forms("arc").Recordset = rs2
    7 Set Me.[SottomArc].Form.Recordset = Me.Recordset
  • Re: VIsualizzare recordset di una form "foglio dati"

    Questo è un altro problema? Perchè non apri una nuova discussione?
    E poi

    OsvaldoLaviosa ha scritto:


    Fai attenzione quando scrivi codice:
    - clicca in basso al rettangolo dove si scrivono i messaggi sul tasto "Editor completo & Anteprima"
    - il codice VBA selezionalo tutto, poi clicca sul tasto in alto </> per farlo apparire con i tipici caratteri monotype più familiari ai programmatori.
Devi accedere o registrarti per scrivere nel forum
15 risposte