- Katılım
- 25 Ocak 2006
- Mesajlar
- 764
- Excel Vers. ve Dili
- 2019 tr
- Altın Üyelik Bitiş Tarihi
- 04-01-2024
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
=--VE(AE1=$U$2;YADA($V$2="HEPSİ";VE($V$2<>"HEPSİ";$W$2=AF1)))
U2 ana etken olmak kaydıyla evetYani, V2'de HEPSİ dışında bir seçenek seçilmişse V2:AC2 arası için YADA diye düşünülecek öyle mi?
=--VE(AE1=$U$2;YADA(VE(YADA($V$2="HEPSİ";$V$2="");AF1<>"");VE(AF1<>"";EĞERSAY($V$2:$AC$2;AF1)>0)))
evet tam dediğiniz gibiEksik gibi gördüğünüz nedir anlayamadım doğrusu.
U2'den (AE için) ve V2'den HEPSİ ya da V2:AC2'de seçilenler (AF için) için 1 sonucu elde edilmiyor mu?
V2 hücresinin BOŞ olması HEPSİ anlamına mı gelsin istiyorsunuz?
teşekkürler. başarılar. iyi gecelerFormülü güncelledim, tekrar kontrol edin.
-- U2 dolu, V2 BOŞ veya HEPSİ iken,
-- ya da V2 boş veya HEPSİ değilken, V2:AC2'de seçilenler için 1 değeri elde edilir.
=--VE(YADA(VE($U$2="TÜMÜ";AE1<>"");VE($U$2<>"";AE1=$U$2));YADA(VE(YADA($V$2="HEPSİ";$V$2="");AF1<>"");VE(AF1<>"";EĞERSAY($V$2:$AC$2;AF1)>0)))
Sub test()
a = Range("AE1:AF" & Cells(Rows.Count, "AE").End(3).Row).Value
ReDim b(1 To UBound(a), 1 To 1)
u = [U2]: v = [V2]: w = [W2]:
x = [X2]: y = [Y2]: Z = [Z2]:
aa = [AA2]: ab = [AB2]: ac = [AC2]:
For i = 1 To UBound(a)
say = say + 1
If a(i, 1) = u Then
If v = "HEPSİ" Then GoTo atla
If a(i, 2) = w Or a(i, 2) = x Or a(i, 2) = y Or a(i, 2) = Z _
Or a(i, 2) = aa Or a(i, 2) = ab Or a(i, 2) = ac Then
atla: b(say, 1) = 1
End If
End If
Next i
[AU1].Resize(say) = b
MsgBox "İşlem tamam...", vbInformation
End Sub
teşekkürler.Alternatif makrolu çözüm.
Kod:Sub test() a = Range("AE1:AF" & Cells(Rows.Count, "AE").End(3).Row).Value ReDim b(1 To UBound(a), 1 To 1) u = [U2]: v = [V2]: w = [W2]: x = [X2]: y = [Y2]: Z = [Z2]: aa = [AA2]: ab = [AB2]: ac = [AC2]: For i = 1 To UBound(a) say = say + 1 If a(i, 1) = u Then If v = "HEPSİ" Then GoTo atla If a(i, 2) = w Or a(i, 2) = x Or a(i, 2) = y Or a(i, 2) = Z _ Or a(i, 2) = aa Or a(i, 2) = ab Or a(i, 2) = ac Then atla: b(say, 1) = 1 End If End If Next i [AU1].Resize(say) = b MsgBox "İşlem tamam...", vbInformation End Sub