• DİKKAT

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

Her iki kod aynı sayfada çalışmıyor

Katılım
15 Temmuz 2012
Mesajlar
2,802
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Merhaba hayırlı geceler.

Ekte gönderdiğim excel sayfasında iller arası hesaplama yapmaya çalışıyorum.
Bütün hepsini çalıştırdım ancak F4 ile G4 hücresi birleşik olduğu için sayfanın kod bölümündeki aşağıdaki koyu ile yazılı kısımdaki kodu çalıştıramadım.

F4 ile G4 hücresine örneğin 150 Km yazdığımda koyu siyahla yazılı olan kodun çalışmasını istiyorum.

Yardımcı olur musunuz?

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("C4,D4,I4,J4,G6,G8,G10")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Address = "$C$4" Then Call Makro2
If Target.Address = "$D$4" Then Call Makro1
If Target.Address = "$I$4" Then Call Makro4
If Target.Address = "$J$4" Then Call Makro3
If Target.Address = "$G$8" Then Call Makro2
If Target.Address = "$G$6" Then Call Makro2
If Target.Address = "$G$10" Then Call Makro9

[B]If ActiveCell.MergeArea.Address <> "$F$4:$G$4" Then Exit Sub
If ActiveCell.MergeArea.Address = "$F$4:$G$4" Then Call KMHesap[/B]

Application.EnableEvents = True
End Sub
 

Ekli dosyalar

Bu satırı kaldırıp deneyin.
Kod:
If ActiveCell.MergeArea.Address <> "$F$4:$G$4" Then Exit Sub
 
Sayın hamitcan Bey, ilginiz için çok teşekkür ederim, sizin dediğiniz gibi yapıyor kod çalışmıyor.

Yaptığım şekil aşağıdaki gibi, F4 ve G4 birleşik hücresinde değişiklik
olduğunda KMHesap makrosundaki belirgin olsun diye basitçe A1 hücresine
ali yazsın diye yaptım ancak kod çalışmıyor.

Sub KMHesap() bu kodu direk çalıştırdığımda çalışıyor.


Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("C4,D4,I4,J4,G6,G8,G10")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Address = "$C$4" Then Call Makro2
If Target.Address = "$D$4" Then Call Makro1
If Target.Address = "$I$4" Then Call Makro4
If Target.Address = "$J$4" Then Call Makro3
If Target.Address = "$G$8" Then Call Makro2
If Target.Address = "$G$6" Then Call Makro2
If Target.Address = "$G$10" Then Call Makro9

If ActiveCell.MergeArea.Address = "$F$4:$G$4" Then Call KMHesap

Application.EnableEvents = True
End Sub


Sub KMHesap()
Range("A1") = "ali"

'Makro8
'Makro6
'Makro7
'Makro9
End Sub
 
Merhaba
Aşağıdaki gibi deneyin.
Kod:
[SIZE="2"]Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("C4,D4,I4,J4,[COLOR="Red"]F4,[/COLOR]G6,G8,G10")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Target.Address = "$C$4" Then Call Makro2
If Target.Address = "$D$4" Then Call Makro1
If Target.Address = "$I$4" Then Call Makro4
If Target.Address = "$J$4" Then Call Makro3
If Target.Address = "$G$8" Then Call Makro2
If Target.Address = "$G$6" Then Call Makro2
If Target.Address = "$G$10" Then Call Makro9
[COLOR="Red"]If Target.Address = "$F$4" Then Call KMHesap[/COLOR]

Application.EnableEvents = True
End Sub [/SIZE]
 
Sayın PLİNT çok teşekkür ediyorum, kontrol edip bilgi vereceğim.

Birleştirilmiş hücre olduğu için çalıştıramamıştım.
 
Sayın PLİNT ilginiz çok teşekkür ediyorum, tam istediğim gibi çalışıyor.

Hayırlı akşamlar, hayırlı çalışmalar diliyorum.
 
Geri
Üst