Makrosuz Sayıyı Yazıya Çevirme

Katılım
4 Kasım 2011
Mesajlar
24
Excel Vers. ve Dili
2010
forumda bu sorunla ilgili konu altındaki tüm başlıklara baktım, fakat istediğim şekilde bir formül bulamadım, kendim şu şekilde bir formül yazdım ancak bir sıkıntı var.

=EĞER(F7>=1000000;ELEMAN(SOLDAN(SAĞDAN(F7;7);1)+1;"";"birmilyon";"ikimilyon";"üçmilyon";"dörtmilyon";"beşmilyon";"altımilyon";"yedimilyon";"sekizmilyon";"dokuzmilyon");"") &EĞER(F7>=100000;ELEMAN(SOLDAN(SAĞDAN(F7;6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"") &EĞER(F7>=10000;ELEMAN(SOLDAN(SAĞDAN(F7;5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"") &EĞER(F7>=1000;ELEMAN(SOLDAN(SAĞDAN(F7;4);1)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"") &EĞER(F7>=1000;"bin";"")&EĞER(SAĞDAN(F7;4);"") &EĞER(F7>=100;ELEMAN(SOLDAN(SAĞDAN(F7;3);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"") &EĞER(F7>=10;ELEMAN(SOLDAN(SAĞDAN(F7;2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"") &ELEMAN(MOD(F7;10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")


bu şekilde kod yazdığımda F7 hücresine 2453 yazıldığında "ikibindörtyüzelliüç" yazmasına rağmen, 1453 gibi bir sayı yazıldığında yazı olarak "birbindörtyüzelliüç" çıkıyor. bu hatayı ne şekilde düzenleyebilirim, yardımcı olabilecek var mı?
 

irfancantr

Altın Üye
Katılım
18 Haziran 2007
Mesajlar
625
Excel Vers. ve Dili
Excel 365 - İmngilizce
Altın Üyelik Bitiş Tarihi
07-05-2029
forumda bu sorunla ilgili konu altındaki tüm başlıklara baktım, fakat istediğim şekilde bir formül bulamadım, kendim şu şekilde bir formül yazdım ancak bir sıkıntı var.

=EĞER(F7>=1000000;ELEMAN(SOLDAN(SAĞDAN(F7;7);1)+1;"";"birmilyon";"ikimilyon";"üçmilyon";"dörtmilyon";"beşmilyon";"altımilyon";"yedimilyon";"sekizmilyon";"dokuzmilyon");"") &EĞER(F7>=100000;ELEMAN(SOLDAN(SAĞDAN(F7;6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"") &EĞER(F7>=10000;ELEMAN(SOLDAN(SAĞDAN(F7;5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"") &EĞER(F7>=1000;ELEMAN(SOLDAN(SAĞDAN(F7;4);1)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"") &EĞER(F7>=1000;"bin";"")&EĞER(SAĞDAN(F7;4);"") &EĞER(F7>=100;ELEMAN(SOLDAN(SAĞDAN(F7;3);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"") &EĞER(F7>=10;ELEMAN(SOLDAN(SAĞDAN(F7;2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"") &ELEMAN(MOD(F7;10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")


bu şekilde kod yazdığımda F7 hücresine 2453 yazıldığında "ikibindörtyüzelliüç" yazmasına rağmen, 1453 gibi bir sayı yazıldığında yazı olarak "birbindörtyüzelliüç" çıkıyor. bu hatayı ne şekilde düzenleyebilirim, yardımcı olabilecek var mı?
Merhaba,

Verdiğiniz formülü denemeye çalıştım fakat siteden alırken çok fazla boşluk karakteri olduğu için uğraşamadım. Siz kendi dosyanızda kırmızı ile işaretlediğim yeri silerek dener misiniz?
 
Katılım
4 Kasım 2011
Mesajlar
24
Excel Vers. ve Dili
2010
@mustafa1207, hocam teşekkür ederim ama istediğim bu tarz bir şey değil, sadece tek hücreye yazacağım formüller ile o hücrede yazdırmayı amaçlıyorum.
ayrıca 1453 yazdığımda "dörtyüzelliüç" şeklinde çıktı, verdiğinde de bi sıkıntı var.
 
Son düzenleme:
Katılım
8 Ocak 2007
Mesajlar
147
Excel Vers. ve Dili
2003
Xp
Türkçe
İngilizce
Formülü aşağıdaki gibi kullanırsanız sanırım olacaktır.

Kod:
=EĞER(F7>=10^6;ELEMAN(SOLDAN(SAĞDAN(F7;7);1)+1;"";"birmilyon";"ikimilyon";"üçmilyon";"dörtmilyon";"beşmilyon";"altımilyon";"yedimilyon";"sekizmilyon";"dokuzmilyon");"")&EĞER(F7>=10^5;ELEMAN(SOLDAN(SAĞDAN(F7;6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(F7>=10^4;ELEMAN(SOLDAN(SAĞDAN(F7;5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&EĞER(F7>=10^3;ELEMAN(SOLDAN(SAĞDAN(F7;4);1)+1;"";"";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"")&EĞER(F7>10^3;EĞER(VE(F7>1999;SOLDAN(SAĞDAN(F7;4);1)="1");"birbin";"bin");"")&EĞER(F7>=100;ELEMAN(SOLDAN(SAĞDAN(F7;3);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(F7>=10;ELEMAN(SOLDAN(SAĞDAN(F7;2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&ELEMAN(MOD(F7;10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")
 

Ekli dosyalar

Katılım
4 Kasım 2011
Mesajlar
24
Excel Vers. ve Dili
2010
evet sanırım aradığım bu idi, 15-20 sayı denedim sorunsuzdu, teşekkür ederim :)
 
Katılım
30 Kasım 2011
Mesajlar
27
Excel Vers. ve Dili
2010
Formülü aşağıdaki gibi kullanırsanız sanırım olacaktır.

Kod:
=EĞER(F7>=10^6;ELEMAN(SOLDAN(SAĞDAN(F7;7);1)+1;"";"birmilyon";"ikimilyon";"üçmilyon";"dörtmilyon";"beşmilyon";"altımilyon";"yedimilyon";"sekizmilyon";"dokuzmilyon");"")&EĞER(F7>=10^5;ELEMAN(SOLDAN(SAĞDAN(F7;6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(F7>=10^4;ELEMAN(SOLDAN(SAĞDAN(F7;5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&EĞER(F7>=10^3;ELEMAN(SOLDAN(SAĞDAN(F7;4);1)+1;"";"";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"")&EĞER(F7>10^3;EĞER(VE(F7>1999;SOLDAN(SAĞDAN(F7;4);1)="1");"birbin";"bin");"")&EĞER(F7>=100;ELEMAN(SOLDAN(SAĞDAN(F7;3);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(F7>=10;ELEMAN(SOLDAN(SAĞDAN(F7;2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&ELEMAN(MOD(F7;10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")

&EĞER(F7>10^3;EĞER(VE(F7>1999;SOLDAN(SAĞDAN(F7;4);1)="1");"birbin";"bin");"")

hocam burdaki mantık ne?
 
Katılım
8 Ocak 2007
Mesajlar
147
Excel Vers. ve Dili
2003
Xp
Türkçe
İngilizce
EĞER(F7>=10^3;EĞER(VE(F7>1999;SOLDAN(SAĞDAN(F7;4);1)="1");"birbin";"bin");"")

eğer söz konusu sayı 1000 den küçükse birşey ekleme
eğer sayı 1000 e eşit ve büyükse, (yani ilk şart doğruysa) bu seferde
eğer söz konusu sayı 1999 dan büyükse ve 1000 ler hanesinde 1 var ise "birbin", bu iki şarttan biri bile sağlanmazsa "bin" yaz.

deneyelim..
999 --> 1000 den büyük değil, birşey ekleme
1333 --> 1999'dan küçük, 'bin' ekle
2333 --> 1999'dan büyük, ama binler hanesinde 1 yok 'bin' ekle
20333 --> 1999 dan büyük, ama binler hanesinde 1 yok 'bin' ekle
21333 --> 1999 dan büyük, binler hanesinde de 1 var 'birbin' ekle.

yanlız soruyu sorduğun iyi oldu. 1000 ve 1000000 yazamıyormuş. Formüle '=' ve bir kaç şey daha ekledim.
EĞER(VE(F7>=10^3;SAYIYAÇEVİR(SOLDAN(SAĞDAN(F7;6);3))>0);EĞER(VE(F7>1999;SOLDAN(SAĞDAN(F7;4);1)="1");"birbin";"bin");"")
bu da ilk şarta yüzbinler, onbinler ve binler hanelerinde 0 dan farklı bir sayı bulunması şartını ekliyor.

Umarım fazla kafa karıştırmamışımdır. Dediğim gibi sorduğun çok iyi oldu.
 

Ekli dosyalar

Son düzenleme:
Katılım
30 Kasım 2011
Mesajlar
27
Excel Vers. ve Dili
2010
biraz kafa karıştı ama teşekkürler hocam bende tam onu dıycektım 1000 yazmıyordu.

1000 yazmanın başka yolunu bulabilir miyiz birde?

Çünki EĞER(VE(F7>=10^3;SAYIYAÇEVİR(SOLDAN(SAĞDAN(F7;6);3))>0) burayı hiç anlamadım :(
 
Son düzenleme:
Katılım
4 Kasım 2011
Mesajlar
24
Excel Vers. ve Dili
2010
hocam onun yerine sadece şu kodu araya eklesek işimizi görmez mi ?
&EĞER(A2=1000;"bin";
 

Korhan Ayhan

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

Kullanmış olduğunuz formül 2003 versiyonda "Formül çok uzun" uyarısı vererek çalışmıyor.

Benim arşivimde bu işlemi yardımcı bir sayfa kullanarak yapan bir çalışma vardı. Kuruşlu değerleride çevirebiliyor. Eğer işinize yararsa kullanabilirsiniz.
 

Ekli dosyalar

Katılım
24 Mart 2010
Mesajlar
3
Excel Vers. ve Dili
office 2007
bunun ingilizcesi mümkün mü?

merhaba arkadaşlar.. bu formülü ingilizce faturanın altına fatura tutarının yazılışı yapmaya çalıştım ama olmadı :( 12.132,52 = (twelvethousandonehundredthirtytwo euro and fiftytwo eurocent) olarak bu mümkün mü?
 
Katılım
24 Mart 2010
Mesajlar
3
Excel Vers. ve Dili
office 2007
hiç bir forumda çözümlenememiş sorun.. bunu böyle imkansız kılan nedir acaba?
 
Katılım
17 Ekim 2012
Mesajlar
2
Excel Vers. ve Dili
2010
arkadaşların vermiş olduğu formülün üzerinde oynayarak TL ve kuruş gösterimi yapan bir formül hazırladım, belki birilerinin işine yarar:
Kod:
=PROPER(IF(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1>=10^6;CHOOSE(LEFT(RIGHT(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;7);1)+1;"";"birmilyon";"ikimilyon";"üçmilyon";"dörtmilyon";"beşmilyon";"altımilyon";"yedimilyon";"sekizmilyon";"dokuzmilyon");"")&IF(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1>=10^5;CHOOSE(LEFT(RIGHT(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&IF(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1>=10^4;CHOOSE(LEFT(RIGHT(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&IF(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1>=10^3;CHOOSE(LEFT(RIGHT(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;4);1)+1;"";"";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"")&IF(AND(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1>=10^3;VALUE(LEFT(RIGHT(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;6);3))>0);IF(AND(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1>1999;LEFT(RIGHT(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;4);1)="1");"birbin";"bin");"")&IF(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1>=100;CHOOSE(LEFT(RIGHT(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;3);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&IF(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1>=10;CHOOSE(LEFT(RIGHT(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&CHOOSE(MOD(IF(LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2));ROUND(A1;2);TRIM(LEFT(ROUND(A1;2);FIND(",";ROUND(A1;2))-1)))*1;10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")) & " TL "
&
IF(OR(LEN(SUBSTITUTE(A1; ","; ""))=LEN(A1);LEN(SUBSTITUTE(ROUND(A1;2); ","; ""))=LEN(ROUND(A1;2)));"";
PROPER(IF(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1)>=10^5;CHOOSE(LEFT(RIGHT(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1);6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&IF(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1)>=10^4;CHOOSE(LEFT(RIGHT(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1);5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&IF(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1)>=10^3;CHOOSE(LEFT(RIGHT(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1);4);1)+1;"";"";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"")&IF(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1)>=10;CHOOSE(LEFT(RIGHT(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1);2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&CHOOSE(MOD(IF(LEN(TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2)))))<2;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*10;TRIM(RIGHT(ROUND(A1;2);LEN(ROUND(A1;2))-FIND(",";ROUND(A1;2))))*1);10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")) & " Kr")
 
Katılım
8 Ocak 2007
Mesajlar
147
Excel Vers. ve Dili
2003
Xp
Türkçe
İngilizce
9. uncu mesajı inceler misin?
Orada ki düzeltme işine yarayacaktır.
 

yanginci34

Altın Üye
Katılım
6 Temmuz 2010
Mesajlar
1,626
Excel Vers. ve Dili
excel2016
Altın Üyelik Bitiş Tarihi
12-10-2026
1001001 yazdığımızda birmilyonbirbinbir yazıyor?
 
Katılım
8 Ocak 2007
Mesajlar
147
Excel Vers. ve Dili
2003
Xp
Türkçe
İngilizce
Bu 'birbin' çok problem oldu ama... :)

Merhaba;
Formülün son hali alttadır. 'Birmilyonbirbinbir' hatasını vermemesi için bir tane daha kontrol ekledim. Bakalım başka bir hata çıkacak mı? :)

Kod:
=EĞER(F7>=10^6;ELEMAN(SOLDAN(SAĞDAN(F7;7);1)+1;"";"birmilyon";"ikimilyon";"üçmilyon";"dörtmilyon";"beşmilyon";"altımilyon";"yedimilyon";"sekizmilyon";"dokuzmilyon");"")&EĞER(F7>=10^5;ELEMAN(SOLDAN(SAĞDAN(F7;6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(F7>=10^4;ELEMAN(SOLDAN(SAĞDAN(F7;5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&EĞER(F7>=10^3;ELEMAN(SOLDAN(SAĞDAN(F7;4);1)+1;"";"";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"")&EĞER(VE(F7>=10^3;SAYIYAÇEVİR(SOLDAN(SAĞDAN(F7;6);3))>0);EĞER(VE(F7>1999;SOLDAN(SAĞDAN(F7;4);1)="1";SOLDAN(SAĞDAN(F7;6);2)<>"00");"birbin";"bin");"")&EĞER(F7>=100;ELEMAN(SOLDAN(SAĞDAN(F7;3);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(F7>=10;ELEMAN(SOLDAN(SAĞDAN(F7;2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&ELEMAN(MOD(F7;10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")
Bu da onceupon arkadaşın hazırladığı 'krş' lu versiyonun düzeltilmiş halidir. (Tabi her ikisi de hücre içine yazılabilen max karakter uzunlukları kısıtlamasından dolayı excel2003de çalışmaz.) :)

Kod:
=YAZIM.DÜZENİ(EĞER(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1>=10^6;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;7);1)+1;"";"birmilyon";"ikimilyon";"üçmilyon";"dörtmilyon";"beşmilyon";"altımilyon";"yedimilyon";"sekizmilyon";"dokuzmilyon");"")&EĞER(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1>=10^5;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1>=10^4;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&EĞER(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1>=10^3;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;4);1)+1;"";"";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"")&EĞER(VE(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1>=10^3;SAYIYAÇEVİR(SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;6);3))>0);EĞER(VE(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1>1999;SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;4);1)="1";SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;6);2)<>"00");"birbin";"bin");"")&EĞER(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1>=100;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;3);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1>=10;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&ELEMAN(MOD(EĞER(UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2));YUVARLA(A1;2);KIRP(SOLDAN(YUVARLA(A1;2);BUL(",";YUVARLA(A1;2))-1)))*1;10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")) & " TL "
&
EĞER(YADA(UZUNLUK(YERİNEKOY(A1; ","; ""))=UZUNLUK(A1);UZUNLUK(YERİNEKOY(YUVARLA(A1;2); ","; ""))=UZUNLUK(YUVARLA(A1;2)));"";
YAZIM.DÜZENİ(EĞER(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1)>=10^5;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1);6);1)+1;"";"yüz";"ikiyüz";"üçyüz";"dörtyüz";"beşyüz";"altıyüz";"yediyüz";"sekizyüz";"dokuzyüz");"")&EĞER(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1)>=10^4;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1);5);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&EĞER(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1)>=10^3;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1);4);1)+1;"";"";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz");"")&EĞER(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1)>=10;ELEMAN(SOLDAN(SAĞDAN(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1);2);1)+1;"";"on";"yirmi";"otuz";"kırk";"elli";"altmış";"yetmiş";"seksen";"doksan");"")&ELEMAN(MOD(EĞER(UZUNLUK(KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2)))))<2;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*10;KIRP(SAĞDAN(YUVARLA(A1;2);UZUNLUK(YUVARLA(A1;2))-BUL(",";YUVARLA(A1;2))))*1);10)+1;"";"bir";"iki";"üç";"dört";"beş";"altı";"yedi";"sekiz";"dokuz")) & " Kr")
 
Son düzenleme:
Üst