On Error

Katılım
15 Şubat 2007
Mesajlar
64
Excel Vers. ve Dili
Excel 2003-İngilizce
Kod:
' diğer BULUYOR
    Cells.Find(What:="G0000000", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    Range(Cells(ActiveCell.Row, "A"), Cells(ActiveCell.Row, "j")).Select
    Selection.Copy
    Range("A1").Activate
    'BULUP ONA EKLİYOR
    Cells.Find(What:="G3500000", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    Range(Cells(ActiveCell.Row, "A"), Cells(ActiveCell.Row, "j")).Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
        False, Transpose:=False
'TEKRAR diğer BULUYOR VE SİLİYOR
Range("A1").Activate
Arkadaşlar yukardaki kodda g0000 ı bulamazsa daha alltaki bi yerden kodu çalıştırmaya devam etsin istiyorum. Aşağıdaki yaptığım doğru mudur, yoksa başka bi yolu var mı?

Çok teşekkürler

Kod:
' diğer BULUYOR

Cells.Find(What:="G0000000", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Range(Cells(ActiveCell.Row, "A"), Cells(ActiveCell.Row, "j")).Select
[B]oN ERROR
MsgBox "G0000000 BULAMADIM DEAVM ETMEK İSTİYORMUSUNUZ", vbYESNO, "Dikkat"
If result = vbYes Then
goto BURDAN_DEVAM[/B]
    Selection.Copy
    Range("A1").Activate
    'BULUP ONA EKLİYOR
    Cells.Find(What:="G3500000", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    Range(Cells(ActiveCell.Row, "A"), Cells(ActiveCell.Row, "j")).Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
        False, Transpose:=False
'TEKRAR diğer BULUYOR VE SİLİYOR
[B]BURDAN_DEVAM[/B]
Range("A1").Activate
 
Katılım
31 Ocak 2007
Mesajlar
228
Excel Vers. ve Dili
office xp tr
Goto hakkında küçük örnek
Sub test()
If Range("a1") > 10 Then GoTo devam
MsgBox "10 dan küçük" 'koşula bağlı aradaki kodu işletir veya işletmez.
Exit Sub
devam:
MsgBox "10 dan büyük"
End Sub
 
Katılım
15 Şubat 2007
Mesajlar
64
Excel Vers. ve Dili
Excel 2003-İngilizce
Goto hakkında küçük örnek
Sub test()
If Range("a1") > 10 Then GoTo devam
MsgBox "10 dan küçük" 'koşula bağlı aradaki kodu işletir veya işletmez.
Exit Sub
devam:
MsgBox "10 dan büyük"
End Sub
Bu bağlamda benim yaptığım doğru mu? yani On error dan sonr amsgbox kullanıp sonra goto diyebilirmiyiz?
Veya bu durumda kullanılabilecek başka bi yol var mı?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki gibi deneyin.

Kod:
[LEFT]' diğer BULUYOR
[B][COLOR=blue]on error goto 10
[/COLOR][/B]Cells.Find(What:="G0000000", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Range(Cells(ActiveCell.Row, "A"), Cells(ActiveCell.Row, "j")).Select
[B][COLOR=blue]exit sub
[/COLOR][COLOR=blue]10 MsgBox "G0000000 BULAMADIM DEAVM ETMEK İSTİYORMUSUNUZ", vbYESNO, "Dikkat"
If result = vbNo Then exit sub
[/COLOR][/B]    Selection.Copy
    Range("A1").Activate
    'BULUP ONA EKLİYOR
    Cells.Find(What:="G3500000", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    Range(Cells(ActiveCell.Row, "A"), Cells(ActiveCell.Row, "j")).Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
        False, Transpose:=False
'TEKRAR diğer BULUYOR VE SİLİYOR
[B]BURDAN_DEVAM[/B]
Range("A1").Activate[/LEFT]
 
Üst