Hücre İçerisindeki Soldaki Boşlukları Sayma

Katılım
21 Haziran 2023
Mesajlar
31
Excel Vers. ve Dili
Office 365 Windows 64 Bit Türkçe
İyi günler, görseldeki gibi bir excel tablom var. Bu tablodaki M000 diye başlayan hücrelerin başında kaç tane boşluk olduğunu çıkarmam gerekiyor(ama sadece başında, ortasında veya sonunda değil) bununla ilgili bir formül var mı acaba?
=UZUNLUK(B2)-UZUNLUK(YERİNEKOY(B2;" ";"")) bu komutu kullandım ne yazıkki işimi görmedi.



 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Aşağıdaki formül metinde ilk geçen "M" harfinden önce (boşluk yada başka karakter ayırımı yapmadan) kaç karakter olduğunu sayar.
Örnek1: " M001" = 3
Örnek2: "xxxM001= 3
İkisi de aynı sonucu döndürür.

Kod:
=BUL("M";A1)-1
 
Katılım
21 Haziran 2023
Mesajlar
31
Excel Vers. ve Dili
Office 365 Windows 64 Bit Türkçe
Teşekkür ederim, ancak sadece m ve p ile değil birçok harfle başlayan kodlar var bana bundan önceki boşluklarda gerekiyor bana. Bul komutunu 29 harfle birleştirebilir miyim?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Teşekkür ederim, ancak sadece m ve p ile değil birçok harfle başlayan kodlar var bana bundan önceki boşluklarda gerekiyor bana. Bul komutunu 29 harfle birleştirebilir miyim?
KIRP fonksiyonunu deneyin.
 

antonio

Destek Ekibi
Destek Ekibi
Katılım
13 Şubat 2011
Mesajlar
1,161
Excel Vers. ve Dili
Microsoft Office Professional Plus 2013 Türkçe
Teşekkür ederim, ancak sadece m ve p ile değil birçok harfle başlayan kodlar var bana bundan önceki boşluklarda gerekiyor bana. Bul komutunu 29 harfle birleştirebilir miyim?
Merhaba,
Alternatif olarak KTF (Kullanıcı Tanımlı Fonksiyon) ile çözüm bulmaya çalışayım:
Kod penceresini açınız, bir modül içine aşağıdaki kodları yapıştırınız:
Kod:
Function BOSLUKLAR(hcr As Range) As Integer
Dim reg As Object, uzunluk As Integer, fark As Integer

uzunluk = Len(hcr.Value)
Set reg = CreateObject("vbscript.regexp")
reg.Global = True
reg.Pattern = "^\s+"

fark = uzunluk - Len(reg.Replace(hcr, ""))

BOSLUKLAR = fark
End Function
Dilediğiniz hücreye =BOSLUKLAR(boşluklarını öğrenmek istediğiniz hücreyi seçiniz) ENTER
 
Katılım
21 Haziran 2023
Mesajlar
31
Excel Vers. ve Dili
Office 365 Windows 64 Bit Türkçe
Teşekkür ederim yeniyim excel'de o yüzden önce kod açmayı da öğrenmem gerek bunun için. Ancak bu formül tüm boşlukları mı sayıya çeviriyor yoksa sadece başlangıçtaki boşlukları mı? Bana sadece baştaki boşluklar lazım.
 
Katılım
21 Haziran 2023
Mesajlar
31
Excel Vers. ve Dili
Office 365 Windows 64 Bit Türkçe
Tekrar merhaba, şu da benim işimi çözebilir; parça numarasının başındaki boşluklar hariç numara içerisindeki boşlukları silen bir formül de olabilir.
Mesela; ( ka 07x17x22 pr) burda ka'dan önceki boşluklara dokunmadan 07 ve pr'den önceki boşluğu silebilir miyiz?
Merhaba,
Alternatif olarak KTF (Kullanıcı Tanımlı Fonksiyon) ile çözüm bulmaya çalışayım:
Kod penceresini açınız, bir modül içine aşağıdaki kodları yapıştırınız:
Kod:
Function BOSLUKLAR(hcr As Range) As Integer
Dim reg As Object, uzunluk As Integer, fark As Integer

uzunluk = Len(hcr.Value)
Set reg = CreateObject("vbscript.regexp")
reg.Global = True
reg.Pattern = "^\s+"

fark = uzunluk - Len(reg.Replace(hcr, ""))

BOSLUKLAR = fark
End Function
Dilediğiniz hücreye =BOSLUKLAR(boşluklarını öğrenmek istediğiniz hücreyi seçiniz) ENTER
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,229
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Öncelikle profilinizde yazan "Excel Vers. ve Dili Office 365 Windows" ifadesini linki inceleyerek revize etmenizde fayda var.


Ek olarak görsel olarak paylaştığınız tabloda bizler boşlukların gerçekten boşluk karakteri olup olmadığını tespit edemiyoruz. Bu sebeple formül içinde kullandığınız " " ifadesi sonuç vermiyor olabilir. 12-20 satırlık küçük bir örnek dosya paylaşırsanız daha net cevaplar alabilirsiniz.
 
Katılım
21 Haziran 2023
Mesajlar
31
Excel Vers. ve Dili
Office 365 Windows 64 Bit Türkçe

P0008586-boşluksuz

P0008501-iki boşluk

M0001343-iki boşluk

P0002382-dört boşluk

P0002367

P0002368

M0002004

P0001019

YK 075 10010-iki boşluk

22212 E1 XL-boşluksuz

M08x025

P0005251

P0004976

GR P 45 M6-boşluksuz

Formülü yazıp boşluksuz olanlardan "0" iki boşluk olanlardan "2" rakamını almak istiyorum. 3,4,5 kaç boşluk varsa karşısına o rakamı istiyorum. Mümkün mü?

Versiyonum aynı, office dilini düzelttim.

 
    
    
    
    
    
    
    
    
 
Katılım
21 Haziran 2023
Mesajlar
31
Excel Vers. ve Dili
Office 365 Windows 64 Bit Türkçe

P0008586-boşluksuz

P0008501-iki boşluk

M0001343-iki boşluk

P0002382-dört boşluk

P0002367

P0002368

M0002004

P0001019

YK 075 10010-iki boşluk

22212 E1 XL-boşluksuz

M08x025

P0005251

P0004976

GR P 45 M6-boşluksuz

Formülü yazıp boşluksuz olanlardan "0" iki boşluk olanlardan "2" rakamını almak istiyorum. 3,4,5 kaç boşluk varsa karşısına o rakamı istiyorum. Mümkün mü?

Versiyonum aynı, office dilini düzelttim.

 
    
    
    
    
    
    
    
    
Tabloyu boşluklu attım yine boşluklar gitmiş dosya linkini ekliyorum.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,229
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Örnek olarak görsel değilde EXCEL dosyası paylaşırmısınız.

Harici dosya yükleme sitelerini kullanabilirsiniz.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,229
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Dosyanızı erişime açarmısınız..
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,229
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

C++:
=UZUNLUK(A2)-UZUNLUK(KIRP(A2))
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,229
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Eğer verilerinizde sonda da boşluk varsa sanırım aşağıdaki DİZİ formülü (Ctrl+Shift+Enter ile formül girişini tamamlayınız) daha net sonuçlar verecektir.

C++:
=MİN(EĞER(PARÇAAL(SOLDAN(A2;SATIR($1:$255));SATIR($1:$255);1)<>" ";SATIR($1:$255)))-1
 
Katılım
21 Haziran 2023
Mesajlar
31
Excel Vers. ve Dili
Office 365 Windows 64 Bit Türkçe
Eğer verilerinizde sonda da boşluk varsa sanırım aşağıdaki DİZİ formülü (Ctrl+Shift+Enter ile formül girişini tamamlayınız) daha net sonuçlar verecektir.

C++:
=MİN(EĞER(PARÇAAL(SOLDAN(A2;SATIR($1:$255));SATIR($1:$255);1)<>" ";SATIR($1:$255)))-1
Yardımlarınız için çok teşekkür ederim.
 
Üst