• DİKKAT

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

Sağdan Boşluğa kadar Al

[TR][TD]
Aşağıdaki şekilde.Doğrusu nasıl olmalı?

145-150gr Lavas

Ekmek

51,00

688,50
[/TD]
[TD]

[/TD]
[TD]

[/TD]
[TD]

[/TD][/TR]
 
Öncelikle formül çok kullanışlı. Ama yanlış anlamadıysam

145-150gr Lavas Ekmek
51,00
688,50

şeklinde isteniyor.
 
Ben aynı şekilde anlamadım.2.boşluğa göre ayrılması istenmiş.Diğer türlü istenseydi Metinden sonraki sayıların ayrılması istenirdi.O zaman çözüm metne göre düşünülürdü.Boşluğun hiç bir önemi olmaz. Aksi takdirde neden boşlukla aldırılması istensin.İstek metinden sonrakileri ayırmak istiyorum şeklinde olamsı gerekmez miydi?
 
Ben sadece tahminimi söyledim. Arkadaşımız muhtemelen ne istediğini söyleyecektir.
 
Öncelikle formül çok kullanışlı. Ama yanlış anlamadıysam

145-150gr Lavas Ekmek
51,00
688,50

şeklinde isteniyor.

Merhabalar
Evet arkadaşlar 145-150gr Lavaş Ekmek B1 Hücresine ; 51,00 C1 Hücresine ; 668,5 D1 hücresine yazdıracağız.
115-120gr Lavaş Ekmek ("2")145,00 ("1") 1.595,00 Burada istediğim Formülü Sağdan çalıştırıp.
1- Önce (1.595,00) Tutar rakamları, Sağdan başlayıp 1.Boşluğa kadar Rakamları Almak, Not: burada ki tutar her zaman 8 Karakterli olmayabiliyor, 9 da olabilir, 4 Karakter de olabilir.
2- Yine Formülü Sağdan çalıştırıp 1.Boşluk ile 2.Boşluk arasında ki adet Rakamlarını Almak. Not: Yine aynı burada da 4 ile 8 Karakter arası rakamlar olabiliyor, yani Sağdan 1. ve 2. Boşluk arasını yazdırır sak Sonuç kaç karakterli olsa da Doğru gelecektir.
Yani burada Formülü soldan da çalıştırsak yine " " Boşlukları bularak aralarındaki verileri kaç karakter ise onları alabilmek,
Örneğin, burada da Soldan işlem yaptıracak olursak, 115-120 ("1") Lavaş ("2") Ekmek ("3")145,00 ("4") 1.595,00 burada 4 ad " "Boşluk Esas olan, Aralarda ki Metindeki [Deyim=[U]115-120 ("1") Lavaş ("2") Ekmek [/U] ] (Rakam ve harfler) Değişken isim olarak ta, Karakter olarak ta Değişken.
Doğru sonuca ulaşabilmek için Bence Boşluklar üzerinden verilere ulaşıp almak daha doğru sonuca götürecektir.
VBA ile de olabilir mi bilemiyorum.
Herkese selamlar ve Sağlıklı günler dilerim.
 
B1 Hücresine
=EĞER(UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;" ";""))<=3;PARÇAAL(A1;1;MBUL(" ";A1;MBUL(" ";A1)+1));PARÇAAL(A1;1;BUL(" ";A1;BUL(" ";A1;BUL(" ";A1)+1)+1)))

C1 Hücresine
=EĞER(UZUNLUK(A2)-UZUNLUK(YERİNEKOY(A2;" ";""))<=3;PARÇAAL(A2;1;MBUL(" ";A2;MBUL(" ";A2)+1));PARÇAAL(A2;1;BUL(" ";A2;BUL(" ";A2;BUL(" ";A2)+1)+1)))

D1 Hücresine
=EĞER(UZUNLUK(A3)-UZUNLUK(YERİNEKOY(A3;" ";""))<=3;PARÇAAL(A3;1;MBUL(" ";A3;MBUL(" ";A3)+1));PARÇAAL(A3;1;BUL(" ";A3;BUL(" ";A3;BUL(" ";A3)+1)+1)))


Bu formüller işine yaramadı mı?
 
B1 Hücresine kopyalayınız.Yeterince sağa ve aşağı doğru çoğaltınız.

Kod:
=KIRP(PARÇAAL(YERİNEKOY(YERİNEKOY(YERİNEKOY($A1;" ";"|";UZUNLUK($A1)-UZUNLUK(YERİNEKOY($A1;" ";""))-1);" ";"|";UZUNLUK($A1)-UZUNLUK(YERİNEKOY($A1;" ";""))-1);"|";YİNELE(" ";100));100*SÜTUN(A$1)-99;100))
 
Alternatif olarak linkteki kullanıcı tanımlı fonksiyonu (KTF) kullanabilirsiniz.

 
Aşağıdaki formülü denermisiniz.

Kod:
=SAĞDAN(A1;UZUNLUK(A1)-BUL("*";YERİNEKOY(A1;" ";"*";UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;" ";"")))))

kaç sene sonra işimizi çözdü ve bu, yıllarca böyle devam edecek.
çok teşekkür ederim.
 
EHWRjYd.jpg

Merhaba,
Resimde görüldüğü üzere tabloda A2 hücresinde tam adres yazmaktadır. B2 hücresine İlleri alabildim fakat C2 hücresinde ilçelerin de yazmasını istiyorum. Bu mümkün müdür?
Şimdiden teşekkür ederim
 
Sorunuzu benzer dahi olsa yeni bir başlık açarak sormalısınız.
 
@megolamen,

Sorunuzun cevabı için @Ali beyin #2 nolu mesajda ki paylaşımını kullanabilirsiniz.

B2;
C++:
=SAĞDAN(A1;UZUNLUK(A1)-BUL("*";YERİNEKOY(A1;" ";"*";UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;" ";"")))))

C2;
C++:
=YERİNEKOY(SAĞDAN(A2;UZUNLUK(A2)-BUL("*";YERİNEKOY(A2;" ";"*";UZUNLUK(A2)-UZUNLUK(YERİNEKOY(A2;" ";""))-1)));B2;"")
 
EHWRjYd.jpg

Merhaba,
Resimde görüldüğü üzere tabloda A2 hücresinde tam adres yazmaktadır. B2 hücresine İlleri alabildim fakat C2 hücresinde ilçelerin de yazmasını istiyorum. Bu mümkün müdür?
Şimdiden teşekkür ederim


Merhaba,

Aşağıdaki formülleri denersiniz.

C++:
'Son boşluktan sonraki kelimeyi alır'
=TRIM(RIGHT(SUBSTITUTE(TRIM($A1);" ";REPT(" ";100));100))
  
'Sondan iki boşluk arasındaki kelimeyi alır'
=SUBSTITUTE(MID(SUBSTITUTE(" " & $A1&REPT(" ";1);" ";REPT("~";255));(LEN(TRIM($A1))-LEN(SUBSTITUTE(TRIM($A1);" ";"")))*255;255);"~";"")
 
Merhaba,

Aşağıdaki formülleri denersiniz.

C++:
'Son boşluktan sonraki kelimeyi alır'
=TRIM(RIGHT(SUBSTITUTE(TRIM($A1);" ";REPT(" ";100));100))
 
'Sondan iki boşluk arasındaki kelimeyi alır'
=SUBSTITUTE(MID(SUBSTITUTE(" " & $A1&REPT(" ";1);" ";REPT("~";255));(LEN(TRIM($A1))-LEN(SUBSTITUTE(TRIM($A1);" ";"")))*255;255);"~";"")
TEŞEKKÜRLER ÇOK SAĞOLUN
 
@megolamen,

Sorunuzun cevabı için @Ali beyin #2 nolu mesajda ki paylaşımını kullanabilirsiniz.

B2;
C++:
=SAĞDAN(A1;UZUNLUK(A1)-BUL("*";YERİNEKOY(A1;" ";"*";UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;" ";"")))))

C2;
C++:
=YERİNEKOY(SAĞDAN(A2;UZUNLUK(A2)-BUL("*";YERİNEKOY(A2;" ";"*";UZUNLUK(A2)-UZUNLUK(YERİNEKOY(A2;" ";""))-1)));B2;"")
ÇOK TEŞEKKÜR EDERİM
 
Daha basit bir yöntemi olarak bunu kullanıyorum. İleride soracak kullanıcılar için faydası olur diye yazıyorum.

Kod:
=YERİNEKOY(E2;SOLDAN(E2;BUL(" ";E2;1));"";1)
 
Geri
Üst