• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

İki Makroyu Birleştirmek;

  • Konbuyu başlatan Konbuyu başlatan ormann
  • Başlangıç tarihi Başlangıç tarihi
Katılım
9 Ekim 2009
Mesajlar
1,626
Excel Vers. ve Dili
türkçe
2003
Günaydın;
Aşağıdaki iki makroyu tek makroda nasıl birleştiririz?

Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, [D4:D6]) Is Nothing Then Exit Sub

On Error GoTo Son
Application.EnableEvents = False
If Target.Row < 6 Then
Range("D6") = ""
Else
Range("D4:D5") = ""
End If
Application.EnableEvents = True
Son:

End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [D4,D6]) Is Nothing Then Exit Sub
If Target.Row = 4 Then Call aktar1
If Target.Row = 6 Then Call aktar2
End Sub
 
Merhaba, şunu deneyiniz, umarım işinizi görür.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, [D4:D6]) Is Nothing Then Exit Sub

On Error GoTo Son
Application.EnableEvents = False
If Target.Row = 6 Then Call aktar2
ElseIf Target.Row < 6 And Target.Row = 4 Then
Call aktar1
ElseIf Target.Row < 6 And Target.Row <> 4 Then
Range("D6") = ""
Else
Range("D4:D5") = ""
End If
Application.EnableEvents = True
Son:

End Sub
 
Son düzenleme:
Sayın Monelog makroda hata verdi.Dosyayı ekliyorum.
 

Ekli dosyalar

  • stok.rar
    stok.rar
    227.4 KB · Görüntüleme: 24
Merhaba
İyi Çalışmalar

On Error GoTo Son
Application.EnableEvents = False
If Target.Row = 6 Then Call aktar2
Else --- Yazanı Silip Denermisiniz
 
Merhaba
İyi Çalışmalar
Bu Dosya Şu Anda
Bende Hata Vermiyor
Denermisiniz.
 
Son düzenleme:
Sayın Asr35 dosya ilk etapta hata vermiyor.Yalnız D4 ve D6 hücrelerindeki veriyi silip tekrar çalıştırdığınızda makro işlem yapmıyor
 
Alternatif kod:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [D4,D6]) Is Nothing Then Exit Sub
If Target.Row = 4 Then Call aktar1
If Target.Row = 6 Then Call aktar2
Application.EnableEvents = False
If Target.Row < 6 Then
Range("D6") = ""
Else
Range("D45") = ""
End If
Application.EnableEvents = True

End Sub
 
Teşekkürler Halit Bey;
 
Geri
Üst