prevista variabile o routine non modulo
cosa vuol dire questo errore quando chiamo una funzione ?
timeDisp (key)
e mi da errore![]()
la funzione che chiamo è dichiarata cosi
Function timeDisp(code As Variant) As Integer
come mai non va ?![]()
![]()
![]()
![]()
![]()
![]()
![]()
prevista variabile o routine non modulo
cosa vuol dire questo errore quando chiamo una funzione ?
timeDisp (key)
e mi da errore![]()
la funzione che chiamo è dichiarata cosi
Function timeDisp(code As Variant) As Integer
come mai non va ?![]()
![]()
![]()
![]()
![]()
![]()
![]()
Forse perchè le parentesi che racchiudono gli argomenti della funzione vanno attaccate al nome della funzione stessa:
codice:n = timeDisp(key) ^^^
Chi non cerca trova.
no lo fa vb automaticamente
Lo fa automaticamente solo perchè hai sbagliato la sintassi della chiamata della funzione, che puoi fare così:
E' comunque insolito scrivere una funzione e poi non prelevare il valore di ritorno, se non ti serve puoi sempre scrivere una Sub.codice:'data la funzione... Function timeDisp(code As Variant) As Integer '... 'valore di ritorno timeDisp = ... End Function Dim n As Integer Dim key As Variant 'esempio di chiamata con restituzione di un valore: '(parentesi attaccata al nome di funzione) n = timeDisp(key) 'se il valore di ritorno non mi interessa: '(parentesi attaccata al nome di funzione) Call timeDisp(key) 'oppure: '(nessuna parentesi) timeDisp key
Oltre a questo appunto, controlla la visibilità della function: all'interno dello stesso form (o modulo o classe) è sempre accessibile, tra oggetti diversi devi anteporre la parola chiave Public:
codice:Public Function timeDisp(code As Variant) As Integer
Chi non cerca trova.
questa funzione la richiama da un if per analizzare il risultato ma il problema non è quello
ho provato a chiamarla in tutti i modi ma niente da fare..
è in un modulo .bas e ho provato a mettere anche il public ma nulla da fare continua a darmi sto errore
ho risolto rinominando la funzione in
tempoDisponibile
ora funziona.. non ho ancora capito perchè visto che non ci sono riferimenti a timedisp .. bho![]()
ho capito perchè
la funzione non può avere lo stesso nome del modulo in cui si trova![]()