Hello, I use a right click to print reports and attach as pdf but I cant figure out how to save to desktop as .pdf. The error I get says it contains the wrong number of arguments. Thoughts on how to grab the active reports name, I think that's the issue.

My module:
Public Function SaveOpenReportAsPDF(strReportName As String) As String
'==================================================================================================
'Create report and save as an attachment to the current record
'==================================================================================================
    Dim myCurrentDir As String
    Dim myReportOutput As String
    Dim myMessage As String

    On Error GoTo ErrorHandler
    myCurrentDir = CurrentProject.Path & "\"
    myReportOutput = myCurrentDir & strReportName & ".pdf"
    If Dir(myReportOutput) <> "" Then    ' the file already exists--delete it first.
        VBA.SetAttr myReportOutput, vbNormal    ' remove any file attributes (e.g. read-only) that would block the kill command.
        VBA.Kill myReportOutput    ' delete the file.
    End If
    DoCmd.OutputTo acOutputReport, strReportName, acFormatPDF, myReportOutput, , , , acExportQualityPrint
    SaveOpenReportAsPDF = myReportOutput
    Exit Function
ErrorHandler:
    MsgBox Error$
End Function
My Reports on load:
Private Sub Report_Load()
    CreateReportShortcutMenu
End Sub
Private Sub CreateReportShortcutMenu()
'==================================================================================================
'//In the Report_Load Event enter CreateReportShortcutMenu then in the reports Property/Shortcut
'   Menu Bar enter the MenuName "vbaShortCutMenu"
'
'//The numbers are Ms Access Control numbers you can download and excel file from MS
'
'//Reference: Microsoft Office 12.0 Object Library
'==================================================================================================
    Dim MenuName As String
    Dim CB As CommandBar
    Dim CBB As CommandBarButton
    MenuName = "vbaShortCutMenu"
    On Error Resume Next
    Application.CommandBars(MenuName).Delete
    On Error GoTo 0
    'The below code creates the menu I named vbaShortCutMenu
    Set CB = Application.CommandBars.Add(MenuName, msoBarPopup, False, False)
    Set CBB = CB.Controls.Add(msoControlButton, , , , True)
    CBB.Caption = "Print..."
    CBB.Tag = "Print..."
    CBB.FaceId = 3
    CBB.OnAction = "=PrintActiveRptFrm()"  'Calls a module mod_ShortCutMenuCommands Public Function PrintActiveRptFrm()
    Set CBB = CB.Controls.Add(msoControlButton, , , , True)
    CBB.Caption = "Send E-mail..."
    CBB.Tag = "Send E-mail..."
    CBB.OnAction = "=EmailAsPDF()"  'Calls a module mod_ShortCutMenuCommands Public Function EmailAsPDF()
    
    Set CBB = CB.Controls.Add(msoControlButton, 12499, , , True)
    CBB.Caption = "Save As pdf..."
    CBB.Tag = "Save As pdf..."
    CBB.FaceId = 3
    CBB.OnAction = "=SaveOpenReportAsPDF()"  'Calls a module mod_ShortCutMenuCommands Public Function SaveOpenReportAsPDF()
    'Adds the Close command.
    'Set CBB = CB.Controls.Add(msoControlButton, 923, , , True)
    'Starts a new group.
    'CBB.BeginGroup = True
    'Change the caption displayed for the control.
    'CBB.Caption = "Close Report"
    Set CB = Nothing
    Set CBB = Nothing
End Sub