Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di ing82
    Registrato dal
    Sep 2014
    Messaggi
    177

    [VBA - Excel] Sub o Function non definita

    La situazione è questa:
    ho creato una serie di function, solo ed esclusivamente function, tutte inserite in un componente aggiuntivo Formule.xlam, che vengono correttamente usate in excel.
    Ora volevo sfruttare queste function all'interno di alcune Sub, in progetti esterni al componente aggiuntivo, ma ricevo l'errore sopra riportato.
    Cercando con motore di ricerca ho visto che il problema dovrebbe essere che bisogna fare in modo che la function "venga resa visibile esternamente", cosa che evidentemente ora non è.
    Sempre dalle ricerche effettuate, ho visto che esistono i moduli e i moduli di classe, ma sinceramente non ne ho capito la differenza, e soprattutto non ho capito se il fatto di aver organizzato tutte le function in soli moduli all'interno del componente aggiuntivo possa influire anch'esso sul problema riscontrato.
    Grazie!

  2. #2
    Utente di HTML.it L'avatar di Misterxxx
    Registrato dal
    Oct 2003
    Messaggi
    3,700
    dovresti aggiungerla al progetto in opzioni/componenti aggiuntivi
    Io ne ho viste cose che voi umani non potreste immaginare. Navi da combattimento in fiamme al largo dei bastioni di Orione e ho visto i raggi B, balenare nel buio vicino le porte di Tannhäuser. E tutti quei momenti ... andranno ... perduti nel tempo, come lacrime nella pioggia. È tempo di morire. (Roy Batty).

  3. #3

  4. #4
    Utente di HTML.it L'avatar di ing82
    Registrato dal
    Sep 2014
    Messaggi
    177
    Quote Originariamente inviata da Misterxxx Visualizza il messaggio
    dovresti aggiungerla al progetto in opzioni/componenti aggiuntivi
    Scusa, ma chi dovrei aggiungere? Il componente aggiuntivo è già attivo e funzionante, infatti tutte le "Function" definite lì dentro fanno il loro lavoro, il problema è che non riesco a usare quelle function al di fuori dei moduli del componente aggiuntivo, mentre lavorano nei fogli di excel se impiegate come funzioni native di excel.
    Spero di aver spiegato meglio il mio problema...

  5. #5
    Utente di HTML.it L'avatar di Misterxxx
    Registrato dal
    Oct 2003
    Messaggi
    3,700
    forse non ho capito: hai un file xlam con le tue funzioni (e ovviamente funzionano se utilizzate nello stesso file)
    vuoi usarle in un progetto esterno, intendendo nelle subs o foglio di un altro file (xlsm esempio)?
    Io ne ho viste cose che voi umani non potreste immaginare. Navi da combattimento in fiamme al largo dei bastioni di Orione e ho visto i raggi B, balenare nel buio vicino le porte di Tannhäuser. E tutti quei momenti ... andranno ... perduti nel tempo, come lacrime nella pioggia. È tempo di morire. (Roy Batty).

  6. #6
    Utente di HTML.it L'avatar di ing82
    Registrato dal
    Sep 2014
    Messaggi
    177
    Quote Originariamente inviata da optime Visualizza il messaggio
    a parte il consiglio di definire le function come public piuttosto che private, che non mi risolve il problema, non capisco dove stia la soluzione nel link postato.
    La mia situazione sembra differente: ho un componente aggiuntivo di excel in cui sono presenti n moduli, in cui sono definite una serie di Function che uso in excel.
    Se sempre all'interno del componente aggiuntivo implemento nuove funzioni che sfruttano funzioni già implementate all'interno del componente aggiuntivo, no problem, il tutto funziona.
    Nasce il problema se cerco di usare le funzioni implmentate nel componente aggiuntivo al di fuori di esso.
    Esempio:
    ho implementato la funzione interpola, che mi serve in più occasioni.
    Se uso la funzione interpola in excel o la richiamo da altre funzioni, all'interno del componente aggiuntivo, tutto funziona, al di fuori no.
    Come risolvere?
    Grazie!

  7. #7
    Utente di HTML.it L'avatar di ing82
    Registrato dal
    Sep 2014
    Messaggi
    177
    Quote Originariamente inviata da Misterxxx Visualizza il messaggio
    forse non ho capito: hai un file xlam con le tue funzioni (e ovviamente funzionano se utilizzate nello stesso file)
    vuoi usarle in un progetto esterno, intendendo nelle subs o foglio di un altro file (xlsm esempio)?
    Esatto!

  8. #8
    Utente di HTML.it L'avatar di Misterxxx
    Registrato dal
    Oct 2003
    Messaggi
    3,700
    ... per il secondo quesito, il modulo di classe lo usi per creare oggetti (vedi OOP), mentre il modulo è più semplicemente usato per creare funzioni (che usano i componenti già inclusi) e che puoi richiamare dal progetto. Basicamente si usano i moduli.
    Io ne ho viste cose che voi umani non potreste immaginare. Navi da combattimento in fiamme al largo dei bastioni di Orione e ho visto i raggi B, balenare nel buio vicino le porte di Tannhäuser. E tutti quei momenti ... andranno ... perduti nel tempo, come lacrime nella pioggia. È tempo di morire. (Roy Batty).

  9. #9
    Utente di HTML.it L'avatar di Misterxxx
    Registrato dal
    Oct 2003
    Messaggi
    3,700
    Quote Originariamente inviata da ing82 Visualizza il messaggio
    Esatto!
    allora ti confermo: "opzioni/componenti aggiuntivi" e aggiungi il file xlam
    verifica la tua configurazione perchè così funziona 100%
    Io ne ho viste cose che voi umani non potreste immaginare. Navi da combattimento in fiamme al largo dei bastioni di Orione e ho visto i raggi B, balenare nel buio vicino le porte di Tannhäuser. E tutti quei momenti ... andranno ... perduti nel tempo, come lacrime nella pioggia. È tempo di morire. (Roy Batty).

  10. #10
    Utente di HTML.it L'avatar di ing82
    Registrato dal
    Sep 2014
    Messaggi
    177
    Quote Originariamente inviata da Misterxxx Visualizza il messaggio
    allora ti confermo: "opzioni/componenti aggiuntivi" e aggiungi il file xlam
    verifica la tua configurazione perchè così funziona 100%
    Ricontrollato, e Formule.xlam è caricato e sembra funzionare...
    C'è altro da fare?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.