Condividi tramite

errore run-time 2501 su acOutputReport

Anonimo
2014-11-21T23:05:55+00:00

buonasera, ho creato un db in access 2010 e sto utilizzando la funzione acOutputReport per esportare un report in pdf

ho tre record in una maschera, apro il report in modalita' invisibile per filtrarlo, lo esporto in pdf e va bene,

poi provo ad esportare il secondo ma mi va in errore di run.time 2501 sull azione acOutputReport

da cosa puo' dipendere?

forse dal contrasto tra l'apertura del report e il salvataggio in pdf?

il codice e' il seguente:

DoCmd.OpenReport stDocName, acPreview, , stLinkCriteria, , acHidden

 DoCmd.OutputTo acOutputReport, stDocName, acFormatPDF, sPath, True

spero di essermi spiegata bene

grazie

saluti

Gio'

Microsoft 365 e Office | Accesso | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

8 risposte

Ordina per: Più utili
  1. Anonimo
    2014-11-22T16:55:09+00:00

    ciao Gio,

    ho testato il codice impostando in una form tre textbox, :

    testo1 contenente "C:"

    testo2 contenente "Pippo"

    testo3 contenente un id da utilizzare come criterio.

    suppongo tu abbia questa configurazione, corretto?

    il report in pdf viene creato correttamente...mi viene da pensare che il problema sia proprio quel me.id che non viene individuato.

    prova ad impostare un punto di interruzione su quella riga, lancia la routine e controlla che il valore di me.id venga letto correttamente.

    facci sapere.

    ps. per pubblicare il file su onedrive (se vuoi utilizzare questo strumento) installalo :https://onedrive.live.com/about/it-it/download/

    ciao, Sandro.

    0 commenti Nessun commento
  2. Anonimo
    2014-11-22T13:50:11+00:00

    non so come fare per pubblicare il db,  ma posso postarti tutto il codice del pulsante in cui salvo il pdf

    If CurrentProject.AllReports("Report1").IsLoaded = True Then

       DoCmd.Close acReport, Reports![Report1].Name

    End If

    Dim stDocName       As String

    Dim stLinkCriteria  As String

    Dim sPath           As String

    Dim myFile

    sPath = Me.Testo1 & "_" & Me.Testo2 & ".Pdf"

    stLinkCriteria = "[ID]=" & Me.ID

    stDocName = "Report1"

    Set myFile = Application.FileDialog(msoFileDialogSaveAs)

    With myFile

       .Title = "Choose File"

       .AllowMultiSelect = False

       .ButtonName = "&Salva Pdf"

       .InitialFileName = sPath

       .Title = "Salva PDF"

       If .Show <> -1 Then

          MsgBox "salvataggio annullato", , ""

          Exit Sub

       Else

          sPath = .SelectedItems(1)

       End If

       DoCmd.OpenReport stDocName, acPreview, , stLinkCriteria, , acHidden

       DoCmd.OutputTo acOutputReport, stDocName, acFormatPDF, sPath, True

    End With

    ecco il codice, penso possa essere applicato a qualsiasi report, io ho pensato che forse il problema sta nel fatto che devo prima aprire il report per filtrarlo, magari mentre salva si incarta in qualcosa, non saprei... vediamo un po...

    0 commenti Nessun commento
  3. Anonimo
    2014-11-22T12:50:42+00:00

    ciao Giò,

    al volo non mi viene in mente nulla....

    riesci a pubblicare su oneDrive una demo del tuo DB in modo da valutare il problema?

    ovviamente elimina tutti i dati sensibili...

    ciao, Sandro.

    0 commenti Nessun commento
  4. Anonimo
    2014-11-22T12:39:04+00:00

    ciao

    si e' tutto corretto, e quello che non mi spiego e' il perche' se sto sul primo record, clicco sul pulsante di salvataggio del report funziona

    poi mi sposto sul secondo record, clicco sul pulsante per salvare il pdf e non va, mi esce l'errore

    da cosa puo' dipendere?

    grazie

    saluti

    0 commenti Nessun commento
  5. Anonimo
    2014-11-22T10:01:02+00:00

    ciao Giò,,

    il contenuto di questa variabile :sPath è corretto?

    nel senso contiene il path di destinazione del file pdf?

    questa la potenziale causa dell'errore che segnali,

    facci sapere,

    ciao, Sandro.

    0 commenti Nessun commento