1-
r hücreye yazdığım yazıyı ve tarihi diğer bir hücrede birleştirmek istiyorum.
a1 hücresinde Yüz Lira
b1 hücresinde 01/12/2009 yazarak
c 1 hücresinde 01/12/2009 tarihinde Yüz ira alınmıştır. yazmak için
=BİRLEŞTİR(b1"tarihinde";a1;"alınmıştır") şeklinde yazdığımızda
tarih kısmında 36123 benzeri rakamlar çıkıyor. Bunu tarih formatında yazmak
için fx içinde bir kısım bulamadım. makro vb bir şey eklenebilir mi?
2-
r de birleştir ile 3 farklı hücreden metin alıp birleştirelim.
a1hücresindekin Kalı, b1hücresindekini italik, c1 hücresindekini altı çizgili
nasıl yaparım.
bu değişimleri birleştir formülünün olduğu hücrede yapmalı.
Hakan beyin gönderdiği cevaptaki makroyu bende rakamoku formülü olduğu için
rakamoku olarak değiştirdim, ayrıca tl makrosu da var sayıyı metne çevirip
sonuna da tl ve krş ekliyor. kullanmak isteyen varsa aşağıda.
3- bu makroyu dışarıya bir dosya olarak verip bşka bir open office yüklü pc de
iki tıklamayla kaydedip kendi dosyamı çalıştırabilir miyim?
Function RAKAMOKU( ByVal Sayi As Double ) As String
Const OndalikHaneSayisi=1
Yazi = ""
If Sayi < 0 Then
Yazi = "Eksi " + RAKAMOKU( -1 * Sayi )
ElseIf Sayi <> Int( Sayi ) Then
Yazi = RAKAMOKU( Int( Sayi ) ) + " Nokta "
OndalikKisim = Sayi - Int( Sayi )
OndalikKisim = Int(OndalikKisim * 10^OndalikHaneSayisi ) /
10^OndalikHaneSayisi
Do
OndalikKisim = OndalikKisim * 10^OndalikHaneSayisi
HaneDegeri = Int(OndalikKisim)
OndalikKisim = OndalikKisim - HaneDegeri
If HaneDegeri > 0 Then
HaneYazisi = RAKAMOKU(HaneDegeri)
Yazi = Yazi + HaneYazisi
Else Exit Do
EndIf
Loop
ElseIf Sayi < 10 Then
Select Case Sayi
Case 0: Yazi = ""
Case 1: Yazi = "Bir"
Case 2: Yazi = "İki"
Case 3: Yazi = "Üç"
Case 4: Yazi = "Dört"
Case 5: Yazi = "Beş"
Case 6: Yazi = "Altı"
Case 7: Yazi = "Yedi"
Case 8: Yazi = "Sekiz"
Case 9: Yazi = "Dokuz"
End Select
ElseIf Sayi < 100 Then
Onluk = Int( Sayi / 10 )
Birlik = Sayi Mod 10
Select Case Onluk * 10
Case 10: Yazi = "On"
Case 20: Yazi = "Yirmi"
Case 30: Yazi = "Otuz"
Case 40: Yazi = "Kırk"
Case 50: Yazi = "Elli"
Case 60: Yazi = "Altmış"
Case 70: Yazi = "Yetmiş"
Case 80: Yazi = "Seksen"
Case 90: Yazi = "Doksan"
End Select
If Birlik > 0 Then
Yazi = Yazi + RAKAMOKU( Birlik )
EndIf
ElseIf Sayi < 1E+3 Then
Yuzluk = Int( Sayi / 1E+2 )
HaneDegeri = Sayi Mod 1E+2
If Yuzluk=1 Then
Yazi = "Yüz"
Else
Yazi = RAKAMOKU( Yuzluk ) + "Yüz"
EndIf
Yazi = Yazi + RAKAMOKU( HaneDegeri )
ElseIf Sayi < 1E+6 Then
Binlik = Int( Sayi / 1E+3 )
HaneDegeri = Sayi Mod 1E+3
If Binlik=1 Then
Yazi="Bin"
Else
Yazi = RAKAMOKU( Binlik ) + "Bin"
EndIf
If HaneDegeri > 0 Then
Yazi = Yazi + RAKAMOKU( HaneDegeri )
EndIf
ElseIf Sayi < 1E+9 Then
Milyonluk = Int( Sayi / 1E+6 )
HaneDegeri = Int( Sayi-( Int( Sayi / 1E+6 ) * 1E+6 ) )
Yazi = RAKAMOKU( Milyonluk ) + "Milyon"
If HaneDegeri > 0 Then
Yazi = Yazi + RAKAMOKU( HaneDegeri )
EndIf
ElseIf Sayi < 1E+12 Then
Milyarlik = Int( Sayi / 1E+9 )
HaneDegeri = Int( Sayi-( Int( Sayi / 1E+9 ) * 1E+9 ) )
Yazi = RAKAMOKU( Milyarlik ) + "Milyar"
If HaneDegeri > 0 Then
Yazi = Yazi + RAKAMOKU( HaneDegeri )
EndIf
ElseIf Sayi < 1E+15 Then
Trilyonluk = Int( Sayi / 1E+12 )
HaneDegeri = Int( Sayi-( Int( Sayi / 1E+12 ) * 1E+12 ) )
Yazi = RAKAMOKU( Trilyonluk ) + "Trilyon"
If HaneDegeri > 0 Then
Yazi = Yazi + RAKAMOKU( HaneDegeri )
EndIf
EndIf
RAKAMOKU() = Yazi
End Function
Function TLOKU(ByVal Sayi as Double) as String
Dim OndalikKisim as Integer
Dim Lira, Kurus as String
Lira = RAKAMOKU( Int( Sayi ) ) + " TL. "
Kurus = ""
If Sayi <> Int( Sayi ) Then
OndalikKisim = Int(Sayi*100 - Int(Sayi)*100)
Kurus = " " + RAKAMOKU(OndalikKisim) + " Krş. "
EndIf
TLOKU = Lira + Kurus
End Function