• DİKKAT

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

kod yardım

Katılım
26 Kasım 2007
Mesajlar
21
Excel Vers. ve Dili
2010 türkçe
slm arkadaşlar aşağıdaki kodda Q4 ile V18 arasındaki hücrelerde true değerleri kontrol ettirip ekrana hepsiseçili ya da seçili olmayan var yazdırmak istiyorum
ama sürekli seçili olmayan var geliyor ekrana



Kod:
  Dim i, k, sec, secme
  sec = 0
  secme = 0
    For i = 17 To 22
        For k = 4 To 18
            If Cells(i, k).Value = "TRUE" Then
                sec = sec + 1
            Else
                secme = secme + 1
            End If
        Next
    Next
   If secme = 0 Then
   MsgBox "hepsi seçili"
   Else
   MsgBox "seçilmemiş var"
   End If
   
End Sub
 
Yazdığınız koddaki hata hücredeki satır ve sütun noyu ifade eden değişkenleri ters yazmışsınız. Yani, Cells(i, k) değil Cells(k,i) olmalıdır. Ayrıca sadece var-yok kontrolü sözkonusu ise bunu döngü ile yapmaya hiç gerek yok. Aşağıdaki gibi basit bir mantıklada sonuç alabilirsiniz.


Kod:
say=worksheetfunction.countif([Q4:V18],True)
if say>0 then
   MsgBox "hepsi seçili"
   Else
   MsgBox "seçilmemiş var"
 End If
 
hocam öncelikle ilginiz ve bilginiz çok teşekkür ederim
bazı eksikler vardı düzelttim
secme değeri nerden aldığı yoktu ve say değeri 0 olduğunda msgbox çalışmıyordu.



Kod:
Private Sub Worksheet_Activate()
say = WorksheetFunction.CountIf([Q4:V18], True)
secme = WorksheetFunction.CountIf([Q4:V18], False)
 If say >= 0 Then
     If secme = 0 Then
       MsgBox "hepsi seçili"
     Else
       MsgBox "seçilmemiş var"
     End If
 End If
  
End Sub
 
Geri
Üst