• DİKKAT

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

boşlukları fazla olan metinde en sağdaki sayıya ulaşma

  • Konbuyu başlatan Konbuyu başlatan modoste
  • Başlangıç tarihi Başlangıç tarihi

modoste

Altın Üye
Katılım
31 Mayıs 2008
Mesajlar
3,714
Excel Vers. ve Dili
Microsoft OFFİCE Ev ve İş 2019 TR

27.02.2020 GR0000P100N0S3 GRO BETON Mikserli 104.0

tek hücrede olan veri bu ben en sağdaki 104.0 ı almak için
=--YERİNEKOY(SAĞDAN(F3;5);".";",") bu formülü yaptım ama başka yöntemi varmıdır.
çünkü sağdan(F3;6) da yapsam aynı cevap oluyo gibi
en son space boşluktan sonraki sağındaki veriyi nasıl bulabilirim.
 
Verileriniz hep bu formatta mı?
Hep 3 basamaklı ve virgülden sonra 1 hane mi var?
 
Alternatif;

DİZİ formüldür.

Formülün sonundaki 15 değeri sondaki 15 karakter anlamındadır. İhtiyacınıza göre düzenleyebilirsiniz.

C++:
=--YERİNEKOY(PARÇAAL(A1;MAK(EĞER(PARÇAAL(A1;SATIR($A$1:$A$32768);1)=" ";SATIR($A$1:$A$32768)))+1;15);".";",")
 
Ayrıca linkte @Ali beyin güzel bir çözümü var. Onu da deneyebilirsiniz.

 
Bu da başka bir alternatif;

C++:
=ARA(9,99999999999999E+307;--SAĞDAN(YERİNEKOY(A1;".";",");SATIR($A$1:$A$32768)))
 
Yarın bilgisayarında çözümleri uygulayacam
Teşekkür ederim
 
şimdi bu konu ile ilgili çözümleri uyguladım ve genel bir soru sormak istiyorum

27.02.2020 GR0000P100N0S3 GROBETON Mikserli 104.0 hücrelerdeki veriler en kötü ihtimalle bu şekilde olsa ve ben önce (KIRP) yaptığımı düşünerekten sorum şu olsa
bu örnek için boşluk sayısı kırptan sonra 4 adet olacaktır. makro ile yada formül ile kaçıncı boşluktan önceki yada sonraki sayı yada metini buldurabilecek formül istiyorum.
mesela ben 3. boşluktan sonraki metini buldurmak istesem cevap = "Mikserli" çıkmalı. 1. boşluktan önceki sayı desem (tarihte elbet olabilir) 27.02.2020 yi bulmalı.

27.02.2020 GR0000P100N0S3 123,46 Mikserli 104.0
örneğimi az bi değişirsem; 2. boşluktan sonraki sayı =123,46
2. boşluktan önceki metin ="GR0000P100N0S3" bulmalı

belirlenecek parametreler
Kırpılacak
kaçıncı boşluk yazılacak
öncesi mi sonrasımı yazılacak
sayı mı isteniyo metin mi isteniyo

galiba makrolu bir çözüm gerekiyo
 
Siz makrolu çözümleri pek sevmezsiniz. Sanırım makrolara adım attınız.
 
Evet korhan hocam makroları hala sevmem ama bu sorum için seçimler yapılıp sonra sınuç çıkacağı için makro ile çözüm olır diye düşünüyorum elbet yanılabilirim hocam
 
Dosyanız...

.
 

Ekli dosyalar

Örnek dosyayı ekliyorum
Sarı Dolgulu yerlere Kriterleri mi yazıyorum
makro çalıştıktan sonra (galiba makrolu çözüm)
Mavi Renkli hücrede Çözüm bulunacak
 

Ekli dosyalar

Haluk hocam çözümünüzü uyguladım teşekkür ederim
ben 4. boşluktan öncesi dediğimde bir diğer mantık 3. boşluktan sonra sı demek olduğundan sizin çözümünüzden yola çıkıcam. eğer bulduğum ifade 104.0 gibi sayıya benzeyen metinsel ifadedende YERİNEKOY(B3;".";",") nokta virgül değişimiyle sonuçlara gidebilecem
 
Peki verdiğiniz örneğe göre 3. boşluktan sonra sayıyı isterseniz sonuç ne olacak?
 
Aranılan veri "sayı" ise "sayı", "metin" ise "metin" olarak, aşağıdaki revizyonla elde edilebilir;

.
 

Ekli dosyalar


27.02.2020 GR0000P100N0S3 GROBETON Mikserli 104.0



Mikserli

KelimeAl($A$1;4;" ")

Deneyiniz




Kod:
Function KelimeAl(HÜCRENİZ, KAÇINCIKELİME, Ayraç) As String

Dim Hücreseç As String, Boşluk As String
Dim ElemanSay As Integer, i As Integer

Hücreseç = HÜCRENİZ

If Ayraç = Chr(32) Then Hücreseç = Application.Trim(Hücreseç)


If Right(Hücreseç, 1) <> Ayraç Then Hücreseç = Hücreseç & Ayraç


ElemanSay = 0
Boşluk = ""

For i = 1 To Len(Hücreseç)
If Mid(Hücreseç, i, 1) = Ayraç Then
ElemanSay = ElemanSay + 1
If ElemanSay = KAÇINCIKELİME Then
'
KelimeAl = Boşluk
Exit Function
Else
Boşluk = ""
End If
Else
Boşluk = Boşluk & Mid(Hücreseç, i, 1)
End If
Next i
KelimeAl = ""
End Function
 
17. mesajdaki Haluk hocamın çözümü en genel çözüm diye arşivime aldım çok teşekkür ederim

excelokyanus un makrosunu çalıştıramadım kodu ekledim ama ALT+F8 dediğimde makro gözükmedi.
ekli dosya yaparmısınız
 
Ben sorumun cevabını alamadım...

.....
belirlenecek parametreler
Kırpılacak
kaçıncı boşluk yazılacak
öncesi mi sonrasımı yazılacak
sayı mı isteniyo metin mi isteniyo
 
Geri
Üst