Forums Neueste Beiträge
 

Unicode im Kombinationsfeld

22/04/2009 - 14:19 von Antje Kaiser | Report spam
Hallo zusammen,
ich habe folgenden Effekt beim SQL Server 2005:
declare @t as nvarchar(10)
set @t = nchar(9650) -- zuweisen eines Unicode-Zeichens aus dem
select @t
führt zum Ergebnis: (Viereck, kann ich leider nicht darstellen, weil ich
dieses nicht kopieren kann, es kommt sofort ▲ wieder raus.)
Er weiß also was dahintersteckt und kann es nur nicht anzeigen, soweit
sogut, damit kann ich leben.
Jetzt habe ich aber in Access 2003 in VBA einen ADODB.Recordset in dem ich
auf eine Tabelle zugreife, die genau einen solchen Wert gespeichert hat. Sehe
ich mir die Tabelle im SQL Server Management Studio an, steht auch dort das
Viereck, aber ich kann es wieder kopieren und er weiß, daß sich dahinter ▲
verbirgt. Greife ich nun mit rs!Feld darauf zu steht an der Stelle des
bisherigen Vierecks ein ?, und er weiß nicht mehr was dahintersteckt. Wenn
ich den String dann weiter verarbeite und daraus einen Filter für eine
SQL-Anweisung aufbaue bringt er natürlich nicht die gewünschten Ergebnisse.
Hat jemand ein Idee, wie ich VBA dazu bringen kann das ganze auch
entsprechend zu behandeln, so daß also mein gewünschter Filter am Ende wieder
▲ beinhaltet oder wegen mir auch, das ja scheinbar intern bekannte Viereck.
Für Tipps bin ich sehr dankbar,

Gruß
Antje
 

Lesen sie die antworten

#1 Stefan Hoffmann
22/04/2009 - 14:31 | Warnen spam
hallo Antje,

Antje Kaiser schrieb:
Greife ich nun mit rs!Feld darauf zu steht an der Stelle des
bisherigen Vierecks ein ?, und er weiß nicht mehr was dahintersteckt. Wenn
ich den String dann weiter verarbeite und daraus einen Filter für eine
SQL-Anweisung aufbaue bringt er natürlich nicht die gewünschten Ergebnisse.


Ich hatte so ein Problem noch nicht, aber eventuell gilt hier analog:

http://msdn.microsoft.com/en-us/lib...87915.aspx


Variant and String Arguments

Excel works internally with wide-character Unicode strings. When a VBA
user-defined function is declared as taking a String argument, Excel
converts the supplied string to a byte-string in a locale-specific way.
If you want your function to be passed a Unicode string, your VBA
user-defined function should accept a Variant instead of a String
argument. Your DLL function can then accept that Variant BSTR
wide-character string from VBA.


Teste mal mit Variant anstatt mit String beim Filteraufbau.


mfG

Access-FAQ http://www.donkarl.com/
KnowHow.mdb http://www.freeaccess.de
Newbie-Info http://www.doerbandt.de/Access/Newbie.htm

Ähnliche fragen