Il fatto è che vorrei lanciare un messaggio a video con il codice che
lo ha prodotto.
Es.
Faccio una procedura ed inserisco questo codice:
sub divisione ()
dim a as integer, b as integer, c as integer
a=1
b=0
c=a/b
end sub
come ben sappiamo questa sub ci darà errore perchè non è possibile
dividere un numero per 0.
Voglio fare in modo che quando da errore mi restituisca un messaggio
con la riga di codice che ho lo ha prodotto.
Qualcuno può aiutarmi?
Questo codice base:
Public Sub m()
10 On Error GoTo RigaErrore
Dim l1 As Long
Dim l2 As Long
Dim l3 As Long
20 l1 = 10
30 l2 = 0
40 l3 = l1 / l2
50 MsgBox l3
RigaChiusura:
60 Exit Sub
RigaErrore:
70 MsgBox Err.Number & _
vbNewLine & _
Err.Description & _
vbNewLine & _
Err.Source & _
vbNewLine & _
ActiveWorkbook.VBProject.VBE.ActiveCodePane.CodeModule & _
vbNewLine & _
"L'errore è avvenuto a riga: " & _
Trim(Str(Erl))
80 Resume RigaChiusura
End Sub
Qui trovi ulteriori spiegazioni
(si riferiscono ad Access, ma valgono anche per Excel):
http://support.microsoft.com/kb/101324/it
http://support.microsoft.com/kb/148358/it
Per numerare le righe di una routine, il mio
personale consiglio è quello di scaricare
MZ-Tools, *indispensabili* per chi lavora
con il VBA. E' gratuito e lo trovi qui:
http://www.mztools.com/v3/mztools3.aspx
Grazie per la tua attenzione e buon lavoro.
--
---------------------------
Mauro Gamberini
Microsoft MVP - Excel
http://www.riolab.org/
http://www.maurogsc.eu/
http://social.answers.microsoft.com/Forums/it-IT/officeexcelit/threads
__________ Informazioni da ESET NOD32 Antivirus, versione del database delle firme digitali 4990 (20100401) __________
Il messaggio è stato controllato da ESET NOD32 Antivirus.