Excel VBA - Farklı Dil Karakterleri Sorunu

vkonca
Mesajlar: 1
Kayıt: 13 Tem 2023, 14:09
Lokasyon: tekirdağ
Meslek: Bilgi İşlem Destek Sorumlusu
Adınız: Volkan
Soyadınız: Konca

Excel VBA - Farklı Dil Karakterleri Sorunu

Mesaj gönderen vkonca »

Merhabalar,

Excel vba ile mesela bir değişkene B1 hücresinde yazan Rusça veya Arapça bir değeri tanımlamak istiyorum fakat ????? olarak çıktı veriyor excel vba.
Yani en basitinden B1 hücresine arapça bişey yazıyorum. Msgbox ile okutsam dahi ????? (Soru İşareti) olarak gözüküyor.
Farklı dillerde işlemlerim var fakat bu durumla ilk defa karşılaşıyorum. Bunun bir çözümü var mıdır?
Mesela ben buradaki değerleri Database'e aktarıcam. Fakat ???? sronunu çözmem gerekiyor.
erseldemirel
Mesajlar: 84
Kayıt: 24 Haz 2023, 00:23
Web Sitesi: https://erseldemirel.com.tr/
Adınız: Ersel
Soyadınız: Demirel

Re: Excel VBA - Farklı Dil Karakterleri Sorunu

Mesaj gönderen erseldemirel »

Bu sorunun çözümü için kişisel pc nizde bölge ve dil ayarlarından UNICODE olmayan programlama dilini değiştirmeniz gerekir. Türkçe yerine Arapça seçin. Hata verirse zahmetli iştir. Özellikle kurum pclerinde bu değişilik için yönetici iznide gerekir. Bence farklı çözümler bulunmalı. Başka arkadaşların çözümlerini bende merak ediyorum
test.png
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
tasad
Mesajlar: 26
Kayıt: 01 Ağu 2023, 14:07
Meslek: Muhasebeci
Adınız: tarık
Soyadınız: sadık

Re: Excel VBA - Farklı Dil Karakterleri Sorunu

Mesaj gönderen tasad »

Userform üzerine textbox yada Label koyarak yapabilirsiniz.Bu şekilde veri tabanına aktarmaniz da mümkün olur.
Örnek kodu deneyebilirsiniz.

Kod: Tümünü seç

Private Sub UserForm_Activate()

Label1 = Range("a1")

TextBox1 = Range("a1")

End Sub
erseldemirel
Mesajlar: 84
Kayıt: 24 Haz 2023, 00:23
Web Sitesi: https://erseldemirel.com.tr/
Adınız: Ersel
Soyadınız: Demirel

Re: Excel VBA - Farklı Dil Karakterleri Sorunu

Mesaj gönderen erseldemirel »

Msgbox gibi görüntülemelerde kendimde test yaptım. Bölge ve dil ayarlarınızı arapça yaparsanız ? ortadan kalkar. Ama dediğim gibi zor bir yol. Test yazısının arapça halini msgbox ile alıyoruz. Çözüm olarak bu keyi değiştirmeniz gerekebilir.

"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Language\Default"

Burada "041F" veya "041f" Türkiye Türkçe dir. Bir kodlama ile arapça kullanacak kişi için bu keyi değiştirecek kod yazabilirsiniz. Bunu kodlama ile yapabilirsiniz.Unutmayınız yönetici izni gerekebilir. Reset gerekebilir.

test2.png
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.