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...
 
Katılım
23 Temmuz 2005
Mesajlar
40
Excel Vers. ve Dili
Excel 2007 - TR
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
 
Katılım
21 Haziran 2007
Mesajlar
97
Excel Vers. ve Dili
Rusca 2003
Merhaba..Aynı problemi ben de yaşıyorum.Bende Azerice harflar SQL-den gelmiyor.Bu konu hakkında deayli bilgi verirseniz sevinirim.
Kolay gelsin
 
Katılım
21 Haziran 2007
Mesajlar
97
Excel Vers. ve Dili
Rusca 2003
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
 
Katılım
5 Ocak 2007
Mesajlar
138
Excel Vers. ve Dili
2007 English
bunu tam olarak nereye yazacağız. vba ya mı yoksa fonksiyon satırına mı?
 
Katılım
21 Haziran 2007
Mesajlar
97
Excel Vers. ve Dili
Rusca 2003
Tabi ki, Vba ya..Yapılam makronun içine Kolay gelsin
 
Üst