• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Sql Dış Veri TUrkce Karakter Sorunu

Katılım
17 Nisan 2007
Mesajlar
6
Excel Vers. ve Dili
Office 2003
Turkce
Excelde Dış veri olarak Sql serverdan veri çekiyorum.
(Çektiğim veri kaynagı yonetimsel araclar veri kaynaklarında tanımlı)
Ancak Ç Ö Ü karakterlerinde problem olmamasına ragmen i ve ğ gibi karakterlerde problem var. Nasıl duzeltebilirim.
Teşekkurler...
 
Bi ara bende uğraşıordum ama olmadı onu ancak bi fonksion ile çözersin. Sql de bu fonksiyonu create et sonra çekeceğin sorguda kullan o zaman türkçe karakter sorunu olmaz.


CREATE FUNCTION TRKNEW(@A NVARCHAR(4000))
RETURNS NVARCHAR(4000)
AS
BEGIN
DECLARE @TMP NVARCHAR(4000)
SET @TMP = REPLACE(@A COLLATE LATIN1_GENERAL_BIN, CHAR(208), N'Ğ')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(220), N'Ü')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(222), N'Ş')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(221), N'İ')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(214), N'Ö')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(199), N'Ç')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(73), N'I')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(240), N'ğ')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(252), N'ü')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(254), N'ş')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(105), N'i')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(246), N'ö')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(231), N'ç')
SET @TMP = REPLACE(@TMP COLLATE LATIN1_GENERAL_BIN, CHAR(253), N'ı')
RETURN @TMP
END
 
Merhaba..Aynı problemi ben de yaşıyorum.Bende Azerice harflar SQL-den gelmiyor.Bu konu hakkında deayli bilgi verirseniz sevinirim.
Kolay gelsin
 
Excelde Dış veri olarak Sql serverdan veri çekiyorum.
(Çektiğim veri kaynagı yonetimsel araclar veri kaynaklarında tanımlı)
Ancak Ç Ö Ü karakterlerinde problem olmamasına ragmen i ve ğ gibi karakterlerde problem var. Nasıl duzeltebilirim.
Teşekkurler...

Abi men cevabı buldum...Yazayim..Arkadaşlara gerekli olur.

Range("A1:A10000").Replace What:="X", Replacement:"Y"

Unicode olaraq

ChrW$(220)-Ü
ChrW$(222)-Ş
ChrW$(208)-Ğ
ChrW$(199)-Ç
ChrW$(221)-İ
ChrW$(214)-Ö
ChrW$(252) -ü
ChrW$(254)-ş
ChrW$(240)-ğ
ChrW$(231)-ç
ChrW$(253)-ı
ChrW$(246)-ö

Yani AGRI yazmak istiyorsan böyle yazacaqsın

Range("A1:A10000").Replace What:="G", Replacement:ChrW$(208)

Aralığı kendin berirle..
Kolay gelsin
 
bunu tam olarak nereye yazacağız. vba ya mı yoksa fonksiyon satırına mı?
 
Tabi ki, Vba ya..Yapılam makronun içine Kolay gelsin
 
Geri
Üst