Utilizzare in Excel costanti VBA



  • Utilizzare in Excel costanti VBA
    di MarcoG data: 29/05/2013 12:21:53

    E' possibile utilizzare in Excel delle costanti definite nel codice VBA?

    Per spiegarmi meglio, es: voglio definire in VBA la costante NOME = "Mario"
    poi utilizzare liberamente in excel richiamandola tramite NOME , come farei se avessi nominato una cella

    Il mio problema deriva dal fatto che i miei file hanno molti dati in comune che se potessi trasferire in un modulo di VBA mi basterebbe poi copiare il modulo per copiare tutti questi dati.

    La mia speranza è inoltre che excel diventi più veloce in questo modo, dato che ora molti miei file hanno raggiunto complessità computazionali importanti



  • di mabolsie data: 29/05/2013 12:54:14

    Ciao Marco

    devi scrivere : Const nome as string = "Mario"

    Ciao Max



  • di isy data: 29/05/2013 13:02:52

    Ciao

    Vedi: hhhh://msdn.microsoft.com/it-it/library/cyxe49xw(v=vs.80).aspx

    Mentre per:
    Cit La mia speranza è inoltre che excel diventi più veloce in questo modo, dato che ora molti miei file hanno raggiunto complessità computazionali importanti
    Non otterrai alcun miglioramento in Velox ma avrai un codice più ordinato.

    Ci sono vari modi per accelerare un codice se non è ancora ottimizzato nei tempi.
    Allega un codice che vuoi accelerare e siamo qui..
     
    ' Esempio: The following statements declare constants. 
    Const maximum As Long = 459
    Public Const helpString As String = "HELP"
    Private Const startValue As Integer = 5



  • di MarcoG data: 29/05/2013 14:47:46

    intanto grazie per le risposte

    purtroppo temo di non essermi spiegato abbastanza chiaramente nella mia richiesta

    quello che vorrei fare è definire delle costanti in VBA per usarle poi nelle formule all'interno delle celle di excel

    continuando l'esempio mio di prima vorrei poter andare poi nella cella A1 del foglio1 e scrivere qualcosa del tipo "=NOME" facendo così saltare fuori la scritta "Mario"



  • di Vecchio Frac data: 29/05/2013 16:26:45

    Forse l'unica cosa che si avvicina di più alla tua strana richiesta, ed è pure una soluzione del tutto inutile, è quella di creare una UDF che restituisca un risultato fisso.
    Con la banale Function di cui sotto, digitando =NOME() in una qualsiasi cella del foglio comparirà la stringa "Mario".
    La potresti perfino usare per concatenare stringhe: ="ciao " & nome() restituisce "ciao Mario".
    Per me è del tutto privo di utilità ma questo soddisfa la tua richiesta ^_^
     
    ' in un modulo
    Function nome() as string
        nome = "Mario"
    End Function