Estrazione nome funzioni e sub da moduli

di Scolaretto il
4 risposte

Buongiorno, avrei bisogno del vostro aiuto per riuscire a estrarre dai moduli il nomi delle funzioni e delle  sub. Sono riuscito ad estrarre nomi dei moduli e numeri di procedure, ma non riesco a capire come andare avanti.

Grazie

Sub ModuliDichiarazioni()
 Dim i As Integer
 Dim NomiModulo As Modules
 Dim x As Integer
 Set NomiModulo = Application.Modules
 For i = 0 To NomiModulo.Count - 1
    Debug.Print "Nome modulo : ", NomiModulo(i).Name, "Nr dichiar : ", NomiModulo(i).CountOfDeclarationLines
    For x = 0 To NomiModulo(i).CountOfDeclarationLines
       
        
    Next
 
 Next

End Sub

4 Risposte

  • CI sono 2 metodi per farlo, io avevo sviluppato una classe che lo faceva, in ogni caso si appoggiava alla LIbreria nativa VBIDE da abilitare come nascosta.

    Altrimenti cicli le linee e fai il parsing, questo è molto meno sicuro e più da sviluppare, devi intercettare le parole specifiche che possono identificare l'Header della Function/Sub, e poi parsare il Nome, che si trova tra Function/Sub e la parentesi aperta... 

  • Ti ringrazio per i suggerimenti ma le classi per ora mi sono ancora oggetto da capire e fare l'analisi sulla stringa del testo e lunga e con risultati, come dici anche tu, non sempre certi.

    Speravo che ci fosse una più semplice 

    grazie

  • Ti ringrazio Alex, ho provato ambedue le opzioni, e sono molto simili, speravo di ottenere anche i parametri di funzione/sub ma mi sembra di capire che con VBIDE non si riesca ad avere i dati che cerco.

    Grazie a presto

Devi accedere o registrarti per scrivere nel forum
4 risposte