Bir cümlenin ilk 3 kelimesini yazdırmak

Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Merhabalar arkadaşlar,

Bir sorum olacaktı, diyelim A1 hücresinde bir firmanın tam ismi var :

A1=BİLMEMNE inşaat taahhüt temizlik gıda turizm pazarlama A.Ş.

Bunu B1 hücresine sadece ilk 3 kelimesiyle çağırabilir miyiz?

B1 : BİLMEMNE İnşaat Taahhüt

Teşekkürler.
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
.

Kod:
=MID(A1;SMALL(IF(MID(" "&A1;ROW(INDIRECT("1:"&LEN(A1)+1));1)=" ";ROW(INDIRECT("1:"&LEN(A1)+1)));1);SUM(SMALL(IF(MID(" "&A1&" ";ROW(INDIRECT("1:"&LEN(A1)+2));1)=" ";ROW(INDIRECT("1:"&LEN(A1)+2)));1+3*{0\1})*{-1\1})-1)
Kod:
=PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(" "&A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)+1));1)=" ";SATIR(DOLAYLI("1:"&UZUNLUK(A1)+1)));1);TOPLAM(KÜÇÜK(EĞER(PARÇAAL(" "&A1&" ";SATIR(DOLAYLI("1:"&UZUNLUK(A1)+2));1)=" ";SATIR(DOLAYLI("1:"&UZUNLUK(A1)+2)));1+3*{0\1})*{-1\1})-1)

Bu bir dizi formülüdür.

Dizi formülleri, formül, Formül Çubuğunda iken (veya formül hücresini seçip. F2 tuşuna basıldıktan sonra) CTRL, SHIFT tuşları basılı tutularak, ENTER ile girilir. Formül { } ayraçlar arasına alınır. { } ayraçları klavyeden girilirse, formül çalışmaz.

Formül, yukarıda belirtildiği şekilde girilmezse #VALUE! - #DEĞER! hatası verir.

.
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Hemen deniyorum zahmet oldu teşekkürler.
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
A1 hücresine 5 kelimelik bir cümle yazarak formülü (ctrl-shift ile) girdim ancak #AD? hatası verdi.

Beklediğimden zahmetli bir formülmüş, ancak nedense çalışmadı.
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
A1 hücresine 5 kelimelik bir cümle yazarak formülü (ctrl-shift ile) girdim ancak #AD? hatası verdi.

Beklediğimden zahmetli bir formülmüş, ancak nedense çalışmadı.
.

Örnek dosya ekleyin. Bakalım.

Ben deneyerek formülü kurdum. Bir dosyada bunu denemeden formülü havadan kurduğumu sanmıyorsunuz, değil mi?

.
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,607
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Sayın yurttas'ın affına sığınarak;makrolu bir çözüm önerisi sunuyorum.
Bu arada formülde bir hata olmadığını ve Sayın yurttas'ın açıklamaları doğrultusunda işlem yapıldığında istenileni yaptığını belirtmeliyım.
Kod:
Sub Ayır()
    a = Split([A1], " ")
    [B1] = a(0) & " " & a(1) & " " & a(2)
End Sub
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Makro çok fazla fonksiyonel olmayacak sanırım, dilimleyiciye bağlı bir pivot tablo'daki değişken satıra göre veriyi çağıracağım için. Yine de teşekkürler.

Eğer formül sizde DE çalıştıysa, kesin ben bir yanlışlık yapıyorum demektir. Tekrar formüle bir bakayım ben. :))
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
.

Kod:
=MID(A1;SMALL(IF(MID(" "&A1;ROW(INDIRECT("1:"&LEN(A1)+1));1)=" ";ROW(INDIRECT("1:"&LEN(A1)+1)));1);SUM(SMALL(IF(MID(" "&A1&" ";ROW(INDIRECT("1:"&LEN(A1)+2));1)=" ";ROW(INDIRECT("1:"&LEN(A1)+2)));1+3*{0\1})*{-1\1})-1)
Kod:
=PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(" "&A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)+1));1)=" ";SATIR(DOLAYLI("1:"&UZUNLUK(A1)+1)));1);TOPLAM(KÜÇÜK(EĞER(PARÇAAL(" "&A1&" ";SATIR(DOLAYLI("1:"&UZUNLUK(A1)+2));1)=" ";SATIR(DOLAYLI("1:"&UZUNLUK(A1)+2)));1+3*{0\1})*{-1\1})-1)

Bu bir dizi formülüdür.

Dizi formülleri, formül, Formül Çubuğunda iken (veya formül hücresini seçip. F2 tuşuna basıldıktan sonra) CTRL, SHIFT tuşları basılı tutularak, ENTER ile girilir. Formül { } ayraçlar arasına alınır. { } ayraçları klavyeden girilirse, formül çalışmaz.

Formül, yukarıda belirtildiği şekilde girilmezse #VALUE! - #DEĞER! hatası verir.

.
Ekteki dosyaya bakabilir misiniz? Formülün doğru olduğunu biliyorum da ben nerede hata yapıyorum bulamadım. (Cursor formül çubuğunda iken ctrl-shift-enter yapıyorum)
 

Ekli dosyalar

Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
.

Dosyanız ekte.

.
Mükemmel oldu. Sanırım topla ile toplam arasındaki küçük bir fark neden olmuş. Teşekkürler.

NOT : İlgilenenler için, yukardaki formül A1 hücresinde yazılı bir cümlenin (şirket adı, adres vs.) ilk 3 kelimesini çağırır (Dizi formülüdür ctrl-shift-enter).
 
Katılım
16 Şubat 2013
Mesajlar
167
Excel Vers. ve Dili
2007 Türkçe
Sn.Yurttaş ve Sn.DeDe'ye teşekkürler. Her zaman olduğu gibi yanıtlarından, farklı yöntemler öğrendim.

Benim de katkım olsun. Aşağıdaki formül de (Hamal usulü :)) değişik bir çözüm.

=SOLDAN(A1;BUL(" ";A1))&SOLDAN(PARÇAAL(A1;BUL(" ";A1)+1;50);BUL(" ";PARÇAAL(A1;BUL(" ";A1)+1;50)))&SOLDAN(PARÇAAL(PARÇAAL(A1;BUL(" ";A1)+1;50);BUL(" ";PARÇAAL(A1;BUL(" ";A1)+1;50))+1;50);BUL(" ";PARÇAAL(A1;BUL(" ";A1)+1;50)))
 
Son düzenleme:

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Alternatif olarak şu formül de kullanılabilir:
Kod:
=SOLDAN(A1;BUL(" ";A1)-1)&" "&SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" "&SOLDAN(YERİNEKOY(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" ";"");BUL(" ";YERİNEKOY(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" ";""))-1)
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
3 den az kelime varsa ?

Diğer alternatif çözümler için teşekkürler. Bu arada küçük bir değişiklik gerekecek sanırım formülde :) (excel de her zaman olageldiği gibi ...).

Baktım bazı isimlerde #SAYI! hatası veriyor. Meğer kelime sayısı 3'den az olduğunda bu hatayı veriyormuş :). Yani tüm formül ,

EĞER(kelime sayısı<=3;cümlenin kendisi;.... ) şeklinde olması gerekiyor sanırım.

Buna dair olarak, diğer alternatifleri deneyeceğim. Gerekirse kendim bu tarz eklemeyi yaparım. Bakalım hangisiyle çözülecek bu sorun. :)
 
Son düzenleme:
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Diğer alternatif çözümler için teşekkürler. Bu arada küçük bir değişiklik gerekecek sanırım formülde :) (excel de her zaman olageldiği gibi ...).

Baktım bazı isimlerde #SAYI! hatası veriyor. Meğer kelime sayısı 3'den az olduğunda bu hatayı veriyormuş :). Yani tüm formül ,

EĞER(kelime sayısı<=3;cümlenin kendisi;.... ) şeklinde olması gerekiyor sanırım.

Buna dair olarak, diğer alternatifleri deneyeceğim. Gerekirse kendim bu tarz eklemeyi yaparım. Bakalım hangisiyle çözülecek bu sorun. :)
Bütün formüller çalışıyor ancak hepsi de aynı hatayı veriyor ve 3'den fazla kelime koşulunu sanırım ben ekleyemeyeceğim :). Formüle yukarıdakine benzer bir koşul ekleyebilirseniz çok sevinirim. Teşekkürler.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki formül işinizi görür ancak çok fazla içiçe düzey kullanıldığı için bende çalışmadı.

Kod:
=EĞER(UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;" ";""))>=3;SOLDAN(A1;BUL(" ";A1)-1)&" "&SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" "&SOLDAN(YERİNEKOY(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" ";"");BUL(" ";YERİNEKOY(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" ";""))-1);A1)
Formül çalışmazsa bunun yerine formülü ikiye bölerek yapabilirsiniz. Önceki mesajımda verdiğim formül A2 hücresindeyse A3 hücresine aşağıdaki formülü yazarak düzgün çalışmasını sağlayabilirsiniz:

Kod:
=EĞER(UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;" ";""))>=3;A2;A1)
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Aşağıdaki formül işinizi görür ancak çok fazla içiçe düzey kullanıldığı için bende çalışmadı.

Kod:
=EĞER(UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;" ";""))>=3;SOLDAN(A1;BUL(" ";A1)-1)&" "&SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" "&SOLDAN(YERİNEKOY(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" ";"");BUL(" ";YERİNEKOY(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");SOLDAN(YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERİNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" ";""))-1);A1)
Formül çalışmazsa bunun yerine formülü ikiye bölerek yapabilirsiniz. Önceki mesajımda verdiğim formül A2 hücresindeyse A3 hücresine aşağıdaki formülü yazarak düzgün çalışmasını sağlayabilirsiniz:

Kod:
=EĞER(UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;" ";""))>=3;A2;A1)
İlk formül gayet güzel çalıştı. 3'ün altındaki kelime sayısında de hata vermiyor :). Teşekkürler.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Şu formül de olabilir:

Kod:
= EĞERHATA(SOLDAN(A1;BUL(" ";A1)-1)&" "&SOLDAN(YERÝNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERÝNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" "&SOLDAN(YERÝNEKOY(YERÝNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");SOLDAN(YERÝNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERÝNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" ";"");BUL(" ";YERÝNEKOY(YERÝNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");SOLDAN(YERÝNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";"");BUL(" ";YERÝNEKOY(A1;SOLDAN(A1;BUL(" ";A1)-1)&" ";""))-1)&" ";""))-1);A1)
 
Katılım
25 Ocak 2013
Mesajlar
188
Excel Vers. ve Dili
2013 Professional Plus Türkçe
Maşallah Yusuf Bey sizden formül saçılıyor etrafa:) Bu formülü de koydum depoya, yedekte olması iyidir her zaman teşekkürler.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Eyvallah :) Ben de sayenizde ve sitedeki diğer arkadaşar sayesinde öğreniyorum zaten. şimdiye kadar hiç böyle bir ihtiyacım olmadığından böyle bir formül oluşturmamıştım ancak ihtiyaç hasıl olunca nasıl çözerim diye yaklaşıp çözmeye çalışıyorum.
 
Üst