Discussione:
Comando errato? On Error GoTo Line
(troppo vecchio per rispondere)
Alessio
2006-08-14 07:31:01 UTC
Permalink
Salve a tutti ho registrato e in parte scritto la seguente macro, che si
ferma quando non trova il foglio "Listino". Io ero convinto che con il
comando On Error GoTo Line2 la macro superasse l'eventualità di non trovare
il foglio ma purtroppo, o non è così, o ho commesso qualche altro errore, ma
data la mia ignoranza in materia non riesco ad individuarlo. Riporto qui
sotto l'intera macro e vi ringrazio per eventuali suggerimenti.
Alessio

Sub Trasf_euro()
'
' Trasf_euro Macro
'
' Scelta rapida da tastiera: CTRL+h
'
Application.ScreenUpdating = False
On Error GoTo Line1
Windows("old.xls").Activate
Sheets("OLD").Select
Range("A1:N2608").Select
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Sheets("OLD").Select
ActiveSheet.Paste
Windows("old.xls").Activate
Line1:
Sheets("Anagrafica").Select
Range("B1:B22").Select
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Sheets("Anagrafica").Select
ActiveSheet.Paste
Application.Run "PERSONAL.XLS!fine_immissione_dati_anagrafica"
Windows("old.xls").Activate
On Error GoTo Line2
'se la scheda Listino non esiste la macro si pianta
Sheets("Listino").Select
Range("A3:D1431").Select
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Sheets("Listino").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("G3").Select
Windows("old.xls").Activate
Range("G3:J1431").Select
Range("G1431").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Windows("old.xls").Activate
Range("M3:M1512").Select
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Range("M3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("A3").Select
Windows("old.xls").Activate
Line2:
On Error Resume Next
Sheets("SNC").Select
On Error Resume Next
Sheets("SRL").Select
If [P2].Value < 601 Then
GoTo Line3
End If
Range("C4:O600").Select
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Sheets("SRL").Select
Range("C4:O600").Select
ActiveSheet.Paste
Windows("old.xls").Activate
Range("N3:O3").Select
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Range("N3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("C12").Select
Application.Run "PERSONAL.XLS!Approx_calcolo"
Application.ScreenUpdating = True
Cells(Range("P2").Value, 3).Select
Exit Sub
Line3:
Range("C4:O1000").Select
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Sheets("SRL").Select
Range("C4:O1000").Select
ActiveSheet.Paste
Windows("old.xls").Activate
Range("N3:O3").Select
Application.CutCopyMode = False
Selection.Copy
Windows("new.xls").Activate
Range("N3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("C12").Select
Application.Run "PERSONAL.XLS!Approx_calcolo"
Application.ScreenUpdating = True
Cells(Range("P2").Value, 3).Select
End Sub
Roberto Restelli
2006-08-14 08:39:21 UTC
Permalink
Ciao Alessio.
Post by Alessio
ho registrato e in parte scritto la seguente macro, che
si ferma quando non trova il foglio "Listino". Io ero convinto che
con il comando On Error GoTo Line2 la macro superasse l'eventualità
di non trovare il foglio
La riga "On Error GoTo Line2" non fa altro che, in caso di errore, rimandare
l'esecuzione alla sezione della procedura (etichetta) con nome "Line2:" e
proseguire da lì.
La cosa migliore per il debug in questi casi è quella di eseguire la
procedura passo-passo (con F8) in maniera tale da controllare sempre
l'esecuzione del codice e vedere uno per volta i comandi che vengono
eseguiti, ed in questo modo controllare ciò che viene eseguito ed in quale
maniera.

Ciao
Roberto
--
Roberto Restelli
Microsoft MVP - Office Systems - Outlook
************************************************
La prima raccolta delle FAQ del newsgroup Microsoft di Outlook:
http://erredue.altervista.org
Continua a leggere su narkive:
Risultati di ricerca per 'Comando errato? On Error GoTo Line' (Domande e Risposte)
6
risposte
Slang Internet?
iniziato 2007-05-07 14:43:48 UTC
parole e giochi di parole
Loading...