- Katılım
- 27 Kasım 2010
- Mesajlar
- 7
- Excel Vers. ve Dili
- 2007 türkçe
B1 hücresine girdiğim =+EĞER(EMETİNSE(A1);"1";" ") formülünü yine formülle toplamak istiyorum yardımcı olurmusunuz arkadaşlar
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
merhabaB1 hücresine girdiğim =+EĞER(EMETİNSE(A1);"1";" ") formülünü yine formülle toplamak istiyorum yardımcı olurmusunuz arkadaşlar
=+EĞER(EMETİNSE(A1);1;0)
=TOPLA([COLOR="Red"]$B:$B[/COLOR])
yalnız formülü öyle yazdığınızda toplam alamazsınız bilginiz olsunTeşekkürler İhsan bey oldu ama ben hücrede metin yokken '0' yazmasını istemiyordum onuda formülü =+EĞER(EMETİNSE(A1);1;" ") şeklinde yazarak hallettim. İlginiz için tekrar teşekkür ederim bütün arkadaşlara.
=+EĞER(EMETİNSE(A1);1;0)
[=0]"";Genel
Option Explicit
Function BUL_TOPLA(Kriter As Range)
Dim Sayfa As Worksheet, BUL As Range
For Each Sayfa In ThisWorkbook.Worksheets
If Sayfa.Name <> "Sayfa4" Then
Set BUL = Sayfa.Cells.Find(Kriter, LookAt:=xlWhole)
If Not BUL Is Nothing Then
BUL_TOPLA = BUL_TOPLA + BUL.Offset(0, 1)
End If
End If
Next
End Function
=BUL_TOPLA(A1)
Option Explicit
Function BUL_TOPLA(Kriter As Range)
Dim Sayfa As Worksheet, BUL As Range, Adres As String
Application.Volatile True
For Each Sayfa In ThisWorkbook.Worksheets
If Sayfa.Name <> "Sayfa4" Then
Set BUL = Sayfa.Cells.Find(Kriter, LookAt:=xlWhole)
If Not BUL Is Nothing Then
Adres = BUL.Address
Do
BUL_TOPLA = BUL_TOPLA + BUL.Offset(0, 1)
Set BUL = Sayfa.Cells.Find(What:=BUL.Value, After:=BUL)
Loop While Not BUL Is Nothing And BUL.Address <> Adres
End If
End If
Next
End Function
Verdiğiniz bilgiler için teşekkür ederim. Birde en son verdiğiniz kod ile ilgili bir problemim daha var. formülü yazdığımda aranacak hücre boşsa #DEĞER hatası veriyor ve excel sayfası bir süre donuyor. Bunu nasıl düzeltebilirim.Selamlar,
Forumun DERSANE ve UYGULAMALI EXCEL EĞİTİMİ bölümlerini detaylıca inceleyerek kendinizi kolaylıkla geliştirebilirsiniz. Ayrıca forumun kitap satış bölümünden kendinize kitap edinip bilgilerinizi pekiştirerek ilerlerseniz daha sağlam adımlar atmış olursunuz.
Option Explicit
Function BUL_TOPLA(Kriter As Range)
Dim Sayfa As Worksheet, BUL As Range, Adres As String
Application.Volatile True
[COLOR=red]If Kriter = Empty Then Exit Function[/COLOR]
For Each Sayfa In ThisWorkbook.Worksheets
If Sayfa.Name <> "Sayfa4" Then
Set BUL = Sayfa.Cells.Find(Kriter, LookAt:=xlWhole)
If Not BUL Is Nothing Then
Adres = BUL.Address
Do
BUL_TOPLA = BUL_TOPLA + BUL.Offset(0, 1)
Set BUL = Sayfa.Cells.Find(What:=BUL.Value, After:=BUL)
Loop While Not BUL Is Nothing And BUL.Address <> Adres
End If
End If
Next
End Function
Teşekkür ederim. Çok güzel oldu. Sayenizde tam istediğim gibi bir çalışma hazırladım. Çok başarılısınız. Bu verdiğiniz kodları Excel sayfaları arasında değilde excel dosyaları arasında kullanmak istersem nasıl düzenlemeliyim.Selamlar,
Basit bir sorgu ifadesi ile bu sorun aşılabilir. Aşağıdaki şekilde deneyiniz.
Kod:Option Explicit Function BUL_TOPLA(Kriter As Range) Dim Sayfa As Worksheet, BUL As Range, Adres As String Application.Volatile True [COLOR=red]If Kriter = Empty Then Exit Function[/COLOR] For Each Sayfa In ThisWorkbook.Worksheets If Sayfa.Name <> "Sayfa4" Then Set BUL = Sayfa.Cells.Find(Kriter, LookAt:=xlWhole) If Not BUL Is Nothing Then Adres = BUL.Address Do BUL_TOPLA = BUL_TOPLA + BUL.Offset(0, 1) Set BUL = Sayfa.Cells.Find(What:=BUL.Value, After:=BUL) Loop While Not BUL Is Nothing And BUL.Address <> Adres End If End If Next End Function