Vba da excel fonksiyonunn ingilizce geri dönmesi

Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Merhaba arkadaşar

Günlük a1 gücresinde 01/10/2007 yazıyor

Kod:
.....
b = WorksheetFunction.Text(s1.Cells(1, 1), "mmmm")
msgbox b 
....
cevabı "Octaber" oluyor, "Ekim" cevabını almak için ne yapmalıyız? tercihen "EKİM" şeklinde büyük hafle yazması iyi olur.. aynı şekilde Günlerde cuma yerine friday ayzıyor. aklıma geldi

saygılarımla
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki gibi deneyin.

Kod:
b =  MonthName(s1.Cells(1, 1), 0)
msgbox b
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Gün için nasıl olacak hocam Yani friday yerine cuma yazması için nasıl bir kod kullanılacak
 
Son düzenleme:
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Tarih = 01/12/2007
Kod:
Dim s1 As Worksheet, s2 As Worksheet, s3 As Worksheet
Set s1 = Sheets("günlük")
....
tarih = s1.Cells(1, 1)
b = MonthName(Month(tarih), False)
MsgBox b
.....
şeklinde çözdüm ışığınız için teşekkür ederim.

b = MonthName(Month(tarih), False) kullanılırsa Aralık
b = MonthName(Month(tarih), False) kullanılırsa Ara
dönüyor, bilginize

Devam eden sorunlar
1) Ucase(b) = ARALıK dönüyor neden ı yı büyük harfle I şeklinde yazmıyor
2) Saturday yerine Cumartesi nasıl yazdıracağız
 
Son düzenleme:

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,620
Excel Vers. ve Dili
Pro Plus 2021
Gün için nasıl olacak hocam Yani friday yerine cuma yazması için nasıl bir kod kullanılacak
Kod:
Sub dene()
    tarih = "01.08.2007"
    b = tarih & vbCr
    frm = "mmm"
    b = b & "[ " & frm & " ] " & Format(tarih, frm) & vbCr
    frm = "mmmm"
    b = b & "[ " & frm & " ] " & Format(tarih, frm) & vbCr
    frm = "ddd"
    b = b & "[ " & frm & " ] " & Format(tarih, frm) & vbCr
    frm = "dddd"
    b = b & "[ " & frm & " ] " & Format(tarih, frm) & vbCr
    frm = "mmmmmm"
    b = b & "[ " & frm & " ] " & Format(tarih, frm) & vbCr
    frm = "dd mmmm yy dddd"
    b = b & "[ " & frm & " ] " & Format(tarih, frm) & vbCr
    frm = "dd.mmmm.yyyy dddd"
    b = b & "[ " & frm & " ] " & Format(tarih, frm) & vbCr
    frm = "dddddd"
    b = b & "[ " & frm & " ] " & Format(tarih, frm) & vbCr
    
    MsgBox b
End Sub
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
sn veyselemre teşekkür ederim

Kod:
    frm = "mmmm"
    a = Format(tarih, frm) & vbCr
    frm = "dddd"
    g = Format(tarih, frm) & vbCr
durumları benim için yeterli ancak eksik
Ucase(a) Kullandığımda büyük harfle dönmesi için ne yapmalıyım peki

bu arada vbcr nin msgboxlarda bir alt satır nasıl yazarım sorusunun cevabı olduğunuda yeni öğrendim tekrar teşekkürler
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,620
Excel Vers. ve Dili
Pro Plus 2021
Kod:
    frm = "mmmm"
    a = Evaluate("=upper(""" & Format(Tarih, frm) & """)") & vbCr
    frm = "dddd"
    g = Evaluate("=upper(""" & Format(Tarih, frm) & """)") & vbCr
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Evulete nin anlamı nedir, Ucase ile upper arasındaki fark nedir sayın hocam
kodları deneme fırsatım olmadı ancak mutlaka çalışacaktır.
teşekkür ederim sn veysel emre
 
Son düzenleme:
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,293
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Bildiğimi söylüyorum, ne derece doğru biliyorum onu da bilmiyorum :)

Evaluate 'nin sözcük anlamı değer biçmek demek.

Application.WorksheetFunction. dedikten sonra bazı excel fonksiyonlarını çağırarak kullanabiliyoruz. Fakat bu yöntemle tüm excel fonksiyonlarını kullanmak olası değil, yok, yapmamış adamlar.

Evaluate ile kullanamadığımız excel fonksiyonlarını kullanma şansımız var.

İngilizce excelde upper büyükharf fonksiyonun karşılığıdır. Bunun VBA daki karşığı ise Ucase. Fakat Ucase Türkçe karakterleri dikkate almıyor.

O nedenle Excelin UPPER fonksiyonunu Evaluate ile kullanılmış.
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Merhaba,

Bildiğimi söylüyorum, ne derece doğru biliyorum onu da bilmiyorum :)

Evaluate 'nin sözcük anlamı değer biçmek demek.

Application.WorksheetFunction. dedikten sonra bazı excel fonksiyonlarını çağırarak kullanabiliyoruz. Fakat bu yöntemle tüm excel fonksiyonlarını kullanmak olası değil, yok, yapmamış adamlar.

Evaluate ile kullanamadığımız excel fonksiyonlarını kullanma şansımız var.

İngilizce excelde upper büyükharf fonksiyonun karşılığıdır. Bunun VBA daki karşığı ise Ucase. Fakat Ucase Türkçe karakterleri dikkate almıyor.

O nedenle Excelin UPPER fonksiyonunu Evaluate ile kullanılmış.
evaulete anladığım kadarı ile sahte hücra yani değeri fonksiyon olarak a1 eşitelyip daha sonra a1 den almaka yerin sanalhücre tanımlama gibi birşey ozaman 00 hücresi

teşekkür ederim
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Evaluate fonksiyonu içine yazılan metnin sonucu olan değeri getirir, yani bu bir fonksiyon ise hesap sonucunu getirecektir. Örnekle açıklarsam,

A1 hücresindeki veriyi getirmek istersek aşağıdaki gibi kullanabiliriz.

Kod:
MsgBox Evaluate("a1")
Eğer A1 ve A2 hücrelerindeki verilerin toplamını getireceksek aşağıdaki gibi kullanabiliriz.

Kod:
MsgBox Evaluate("a1+a2")
Ayrıntılı bilgi için aşağıdaki linki inceleyebilirsiniz.

http://msdn2.microsoft.com/en-us/library/aa223886(office.11).aspx

Upper fonksiyonunun kullanımı ile ilgili olarak "ExecuteExcel4Macro" yönteminin kullanıldığı bir çözüm daha önermek istiyorum. Aslında "Evaluate" fonksiyonu ile bu eski yöntemin kullanımı benzerdir. "ExecuteExcel4Macro" yönteminin en büyük avantajı kapalı dosyadanda veri çekebilmesidir.

Kod:
a=ExecuteExcel4Macro("UPPER(""" & Format(Tarih, "mmmm") & """)")
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
açıklamalarınız için teşekkür ederim leventm
 
Üst