riferimenti VBA



  • riferimenti VBA
    di melo (utente non iscritto) data: 27/06/2013 13:15:23

    .... vorrei aggiungere al mio progetto una macro che verifica la presenza del riferimento a PDFcreator in modo da utilizzare le opzioni di creazione di file .PDF ... potete darmi delle indicazioni in quanto i vari metodi di utilizzo delle funzioni addreference di VBA permettono solo l'aggiunta di funzioni di excel?



  • di Vecchio Frac data: 27/06/2013 14:34:56

    cit. "in quanto i vari metodi di utilizzo delle funzioni addreference di VBA permettono solo l'aggiunta di funzioni di excel"
    ---> Scusa ma questo non è esatto ^_^
     
    Option Explicit
    
    Sub lista_riferimenti()
    Dim i As Integer, s As String, found As Boolean
    
        For i = 1 To Application.VBE.ActiveVBProject.References.Count
            s = LCase(Application.VBE.ActiveVBProject.References(i).Name)
            If InStr(s, "pdfcreator") Then found = True: Exit For
        Next
        
        If found Then
            MsgBox "PDF Creator è correttamente aggiunto come riferimento in VBA."
        Else
            MsgBox "PDF Creator non è aggiunto come riferimento in VBA."
        End If
    
    End Sub






  • di Vecchio Frac data: 27/06/2013 14:41:24

    Eccoti quindi il codice che ti serve per caricare il riferimento a PDF Creator via codice se non era già stato caricato. Devi solo verificare il percorso del programma affinchè risulti accessibile al codice.
     
    Option Explicit
    
    Sub add_PDFCreator()
        If Not PDFCreator_reference_is_loaded Then Application.VBE.ActiveVBProject.References.AddFromFile "C:ProgrammiPDFCreatorPDFCreator.exe"
    End Sub
    
    Private Function PDFCreator_reference_is_loaded() As Boolean
    Dim i As Integer, s As String
    
        For i = 1 To Application.VBE.ActiveVBProject.References.Count
            s = LCase(Application.VBE.ActiveVBProject.References(i).Name)
            If InStr(s, "pdfcreator") Then PDFCreator_reference_is_loaded = True: Exit Function
        Next
    
    End Function