Errore Return senza GoSub

di il
4 risposte

Errore Return senza GoSub

Buongiorno a tutti, ho un problema con una maschera in fase di apertura in quanto mi restituisce l'errore "Return senza GoSub".
Descrivo la situazione:
Apro la maschera [cerca_articolo].
Inserisco l'articolo che cerco nel campo [cerca].
Con un pulsante apro la maschera [articoli] la quale mi restituisce solo l'articolo che ho cercato.
La maschera [articoli] su Evento "Su corrente" ha il seguente codice che serve per recuperare l'immagine corrispondente all'articolo:

Private Sub Form_Current()
On Error GoTo 10
mydir = CurrentProject.Path
mypath = mydir & "\Images\" & Me.Disegno.Value & ".jpg"
Me.Immagine17.Picture = mypath
GoTo 20

10 'errore di foto non trovata
mydir = CurrentProject.Path
mypath = mydir & "\Images\" & "No.jpg"
Me.Immagine17.Picture = mypath


20 'Tutto ok

End Sub
Da cosa può dipendere l'errore?

4 Risposte

  • Re: Errore Return senza GoSub

    Mostra altro codice della Sub perché il problema è da qualche altra parte ...

    Forse in altre Sub o Function

    Ma scusa, non viene evidenziata una linea di codice appena hai l'errore?
  • Re: Errore Return senza GoSub

    Roberto2012,
    premesso che lo statement GOTO (in VBA) deve possedere una corretta etichetta di riga, quindi una label con i due punti (la tua sintassi era applicabile, magari, al vecchio Basic per MS-DOS).
    https://msdn.microsoft.com/it-it/library/xh9dwts7.asp

    Ti consiglio comunque di passare da una tecnica "spaghetti code" (con i GOTO) ad un paradigma come la "programmazione strutturata", inoltre il tuo codice può essere ottimizzato semplicemente controllando la presenza del file JPG, nella directory, prima della sua assegnazione al suo controllo immagine:
    http://www.weichbrodt.it/whow/vba/verificare-l-esistenza-di-un-file.html
  • Re: Errore Return senza GoSub

    Salve a tutti, avendo una copia che funzionava prima delle ultime modifiche fatte, sono ripartito da li e il problema ora non c'è l'ho più. Il problema che causava l'errore purtroppo non l'ho capito, comunque farò tesoro dei consigli che mi avete dato riguardo il codice che ho postato.
  • Re: Errore Return senza GoSub

    Roberto2012 ha scritto:


    ...Il problema che causava l'errore purtroppo non l'ho capito, comunque farò tesoro dei consigli che mi avete dato riguardo il codice che ho postato.
    L'errore sta nel fatto che l'etichetta di riga deve avere i duepunti (vedi il primo link di willy55)
    10: 'errore di foto non trovata
    mydir = CurrentProject.Path
    mypath = mydir & "\Images\" & "No.jpg"
    Me.Immagine17.Picture = mypath
    
    20: 'Tutto ok
    End Sub
    ma evita questo sistema di scrivere codice. Alcuni "puristi" dicono che l'unico GoTo da usare è quello per la gestione degli errori.
Devi accedere o registrarti per scrivere nel forum
4 risposte