• DİKKAT

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

İç içe 2 fonksiyon

  • Konbuyu başlatan Konbuyu başlatan efem67
  • Başlangıç tarihi Başlangıç tarihi
Evet hocam değişiklik olduğunda çalışacak, Buton ile değil
Benim yazdığım ancak yukarıda anlattığım satırlar için olmalı;
Benim yapmak istediğim E5 ile E10 Arasında herhangi bir hücrede
aynı değer var ise olacak . Açıldığında da 2 aynı değere sahipler
hariç, değişmeyen diğer değerler G5 Ve H5 e otomatik geçecek..
 
Benim yapmak istediğim E5 ile E10 Arasında herhangi bir hücrede
aynı değer var ise , G5 , H5 açılacak. Açıldığında da 2 aynı değere sahipler
hariç yani değişmeyen diğer değerler G5 Ve H5 e otomatik geçecek..

Private Sub Worksheet_Change(ByVal Target As Range)
If Sayfa1.Range("E5") = Sayfa1.Range("E10") Then
Columns("G:H").EntireColumn.Hidden = False
Else
Columns("G:H").EntireColumn.Hidden = True
End If
End Sub
bu çalışıyor ama yanlızca iki hücrede sorgu yapıyor...
 
Deneyiniz:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
son = Cells(Rows.Count, 1).End(3).Row
a = 0
For i = 5 To WorksheetFunction.Max(5, son)

If WorksheetFunction.CountIf(Range("E5:E" & son), Cells(i, "e")) > 1 And Cells(i, 4) <> "DİSKALİFİYE" Then
a = a + 1
End If
Next
If a > 1 Then
Columns("G:H").Hidden = False
Else
Columns("G:H").Hidden = True
End If
End Sub
 
Yusuf hocam teşekkürler çalıştı; peki bunu q11 ile q25 arasında çalışması için nasıl bir düzeltme yapmalıyım . Buda çözülürse işlem dört dörtlük olacak. Emeğinize Şimdiden Teşekkürler
 
Yusuf hocam aşağıdaki gibi yapınca oldu...

Private Sub Worksheet_Change(ByVal Target As Range)
son = Cells(Rows.Count, 1).End(3).Row
a = 0
For i = 5 To WorksheetFunction.Max(5, son)

If WorksheetFunction.CountIf(Range("Q11:Q" & son), Cells(i, "Q")) > 1 Then
a = a + 1
End If
Next
If a > 1 Then
Columns("S:V").Hidden = False
Else
Columns("T:U").Hidden = True
End If
End Sub
 
Son düzenleme:
fakat Yukarıdaki koşulda 1 ve veya 2 adet DİSKALİFİYE YAZISI varsa bunu gözardı etmesi gerekiyor..
ayrıca iki ayrı hücrede aynı sayı değerleri var ise ; bunu nasıl yanıp söndürebilirim..
 
Son düzenleme:
if WorksheetFunction.CountIf(Range("Q11:Q" & son), Cells(i, "Q")) > 1 Then

Kısmını aşağıdaki gibi değiştirip dener misiniz?

if cells(i," Q") <> "DİSKALİFİYE" and WorksheetFunction.CountIf(Range("Q11:Q" & son), Cells(i, "Q")) > 1 Then
 
Yusuf hocam oldu çalıştı; ancak hücrelerde değer yani sayı değerleri olmadan, hiçbir veri girilmeden , yani daha puanlar yok iken debug hatası veriyor. Nasıl düzeltebilirim,
Hatta intro ve süreye 00:00 değerini ilk puana da 0 değerini yazdım, bu durumdayken problem yok
ancak değerleri girmeye başladığında yine END ve DEBUG hatası veriyor..
If Cells(i, "Q") <> "DİSKALİFİYE" And WorksheetFunction.CountIf(Range("Q11:Q" & son), Cells(i, "Q")) > 1 Then BU SATIR
 
Son düzenleme:
İşte sayfaya bağlı olaylar bu şekilde sorunlara neden olabiliyor. Manuel çalıştırma olsa böyle problem olmaz diye düşünüyorum. Çünkü sayfa olayı sayfadaki herhangi bir hücrede herhangi bir değişiklik olduğunda makronun çalışmasını sağlıyor. Makro her çalıştığında da verilen işlemleri yeniden yapıyor. Düzeltmek için makronun sadece belirli hücrelere/hücreye veri girildiğine çalışması ya da manuel çalıştırılması düşünülebilir. Benim bilgim bundan fazlasına yetmiyor maalesef.
 
Geri
Üst