Excel tablolarında «+» sembollerinin sayılması
Excel'de artı işaretlerinin sayısını hesaplamak için =SUMPRODUCT(LEN(A1:A10)-LEN(SUBSTITUTE(A1:A10;"+";""))) formülünü kullanın — bu formül, hücre metinlerinin içindeki tüm «+» sembolü örneklerini bulacaktır. Sadece yalnızca «+» işareti içeren hücreleri saymanız gerekiyorsa, daha basit olan =COUNTIF(A1:A10; "+") fonksiyonu uygun olacaktır. Yöntem seçimi verilerinizin yapısına bağlıdır: artı işareti ayrı mı duruyor yoksa bir metnin parçası mı?
Yalnızca «+» işareti içeren hücrelerin sayılması
En basit senaryo, «+» işaretinin bir işaretleyici olarak (örneğin, «tamamlandı») kullanıldığı ve hücrenin tamamını kapladığı durumdur. Bu durumda metin uzunluğunu analiz etmeye gerek yoktur, tam eşleşmeyi kontrol etmek yeterlidir.
СЧЁТЕСЛИ (COUNTIF) fonksiyonunu kullanın:
=СЧЁТЕСЛИ(A1:A20; "+")
Bu formül aralığı tarar ve değeri tam olarak «+» olan hücrelerin sayısını döndürür. Boş hücreler veya «А+Б» gibi metin içeren hücreler dikkate alınmayacaktır.
Hücrelerde fazladan boşluklar olabilir (örneğin, « + »), bu durumda formül doğru çalışmayacaktır. Verileri СЖПРОБЕЛЫ (TRIM) fonksiyonu ile temizleyin veya joker karakterler kullanın: =СЧЁТЕСЛИ(A1:A20; "*+*"). Yıldız işaretleri «artı işaretinden önce ve sonra herhangi bir metin» anlamına gelir.
Metin içindeki tüm artı işareti örneklerinin sayılması
Çoğu zaman artı işareti bir formülün, kodun veya listenin parçasıdır (örneğin, «Москва+Казань+Уфа»). Standart СЧЁТЕСЛИ burada yardımcı olmaz, çünkü hücreleri değil, içindeki sembolleri sayar.
Görevi çözmek için ДЛСТР (LEN) ve ПОДСТАВИТЬ (SUBSTITUTE) fonksiyonlarının kombinasyonu kullanılır ve bunlar СУММПРОИЗВ (SUMPRODUCT) içine sarılır:
=СУММПРОИЗВ(ДЛСТР(A1:A10)-ДЛСТР(ПОДСТАВИТЬ(A1:A10;"+";"")))
Çalışma mantığı:
ДЛСТРher hücredeki orijinal metin uzunluğunu ölçer.ПОДСТАВИТЬtüm «+» işaretlerini kaldırarak «А+Б» ifadesini «АБ» haline getirir.- İkinci
ДЛСТРartı işaretleri olmadan metin uzunluğunu ölçer. - Uzunluklar arasındaki fark, kaç sembolün kaldırıldığını (yani kaç artı işareti olduğunu) gösterir.
СУММПРОИЗВbu farkları tüm aralık boyunca toplar.
Bu yöntem evrenseldir ve Excel'in tüm sürümlerinde çalışır.
Yeni Excel sürümleri için özellikler (365 ve 2021)
Modern Excel sürümlerinde dinamik diziler mevcuttur, bu da formülleri biraz daha okunabilir hale getirmeye olanak tanır, ancak prensip aynı kalır. Belirli satırlarda sadece artı işaretlerini saymanız gerekiyorsa, verileri önceden filtrelemek için ФИЛЬТР (FILTER) fonksiyonunu kullanabilirsiniz.
Örnek: Sadece «Отчет» kelimesi içeren hücrelerdeki artı işaretlerinin sayılması:
=СУММПРОИЗВ(ДЛСТР(ФИЛЬТР(A1:A100; ЕЧИСЛО(ПОИСК("Отчет"; A1:A100))))-ДЛСТР(ПОДСТАВИТЬ(ФИЛЬТР(A1:A100; ЕЧИСЛО(ПОИСК("Отчет"; A1:A100))); "+"; "")))
Formül karmaşık görünse de, ek sütunlar oluşturmadan verileri esnek bir şekilde filtrelemeye olanak tanır.
VBA makrosu ile otomasyon
Eğer devasa tablolarla (yüz binlerce satır) çalışıyorsanız veya bu hesaplamayı sık sık tekrarlammanız gerekiyorsa, formüller dosyanın çalışma hızını yavaşlatabilir. Bu durumda VBA üzerinde kullanıcı tanımlı bir fonksiyon oluşturmak daha iyidir.
- Kod düzenleyicisini açmak için
Alt + F11tuşlarına basın. - Yeni bir modül ekleyin (
Insert→Module). - Aşağıdaki kodu kopyalayın:
Function CountPluses(rng As Range) As Long
Dim cell As Range
Dim total As Long
For Each cell In rng
If Not IsError(cell.Value) Then
total = total + Len(cell.Value) - Len(Replace(cell.Value, "+", ""))
End If
Next cell
CountPluses = total
End Function
Artık hücrede basit bir formül yazabilirsiniz: =CountPluses(A1:A1000). Makro, karmaşık dizi formüllerinden daha hızlı çalışır ve hücrelerdeki hataları yok sayar.
Makro içeren dosyalar .xlsm formatında (makro destekli Excel) kaydedilmelidir. Böyle bir dosyayı başka bir bilgisayarda açarken makroları çalıştırmak için izin gerekebilir.
Sayım sırasında yapılan yaygın hatalar
| Sorun | Neden | Çözüm |
|---|---|---|
| Formül 0 döndürüyor | Hücrelerde işaretin etrafında boşluklar var | Formül içinde СЖПРОБЕЛЫ kullanın veya boşlukları bul/değiştir ile kaldırın |
| #DEĞER! hatası | Aralıkta hata içeren veya sayısal hücreler var | Aralığın metin içerdiğinden emin olun veya ЕСЛИОШИБКА kontrolü ekleyin |
| Yanlış ayırıcı | Noktalı virgül yerine virgül kullanılmış | Rusça Excel sürümünde argümanlar ; (noktalı virgül) ile ayrılır |
| Gizli semboller sayılıyor | Metinde yazdırılamayan karakterler var | Saymadan önce ПЕЧСИМВ (CLEAN) fonksiyonunu kullanın |
Sıkça Sorulan Sorular (SSS)
Virgül gibi diğer sembollerin sayısını hesaplayabilir miyim?
Evet, prensip aynıdır. Formülde «+» işaretini istediğiniz sembolle değiştirin. Virgül için formül şöyle görünecektir: =СУММПРОИЗВ(ДЛСТР(A1:A10)-ДЛСТР(ПОДСТАВИТЬ(A1:A10;",";""))).
Sadece görünür (filtrelenmiş) hücrelerdeki artı işaretlerini nasıl sayarım?
Standart formüller, filtre tarafından gizlenenler dahil olmak üzere aralıktaki tüm hücreleri sayar. Sadece görünür olanları saymak için, her satırın Hidden özelliğini kontrol eden VBA ile yazılmış bir fonksiyona veya ayrıca filtrelenecek bir ara sütuna ihtiyaç vardır.
Bu Google E-Tablolar'da çalışır mı?
Evet, Google Sheets'teki LEN, SUBSTITUTE ve SUMPRODUCT fonksiyonlarının sözdizimi aynıdır (bölgesel ayarlara bağlı olarak argüman ayırıcısı noktalı virgül veya virgül olabilir).