2016-05-14 20 views
-1

Ich habe den Code und Beispieldatei von einer anderen Seite über die Verwendung von Excel als Datenbank in VBA. und ich habe das gleiche Problem mit dem Thema Schlag: VBA ADODB Query Mysql returns character corruption aber mein Code hat:ADODB Abfrage werden seltsame Zeichen mit vietnamesischen Zeichen

cnn.ConnectionString = "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" & _ 
ActiveWorkbook.Path & Application.PathSeparator & ActiveWorkbook.Name 

Gibt es eine Möglichkeit, dies zu beheben?

ist hier ausführlich über den Code (sorry, wenn es zu lang ist, zu lesen): http://chandoo.org/wp/2012/04/02/using-excel-as-your-database/

Als ich Vietnamesen Charaters in Blatt „Daten“ verwenden und Ausführen von SQL werden Vietnamesisch Charaters alle angezeigt, wie ???

Ich hoffe, eine Anleitung zu erhalten, um es zu beheben.

Entschuldigung, hier ist der Hauptcode Für mehr wie den Arbeitscode, Daten und wie es funktioniert, ... bitte laden Sie die vollständige Datei von Link von Chandoo oben, weil ich nicht weiß, wie man Datei anfügt hier:

  Option Explicit 
      Public cnn As New ADODB.Connection 
      Public rs As New ADODB.Recordset 
      Public strSQL As String 

      Public Sub OpenDB() 
       If cnn.State = adStateOpen Then cnn.Close 
       cnn.ConnectionString = "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" & _ 
       ActiveWorkbook.Path & Application.PathSeparator & ActiveWorkbook.Name 
       cnn.Open 
      End Sub 

      Public Sub closeRS() 
       If rs.State = adStateOpen Then rs.Close 
       rs.CursorLocation = adUseClient 
      End Sub 
+0

Bitte teilen Sie Ihre Codes –

Antwort

0

ich habe die Antwort sein wird empfohlen, dass OLE DB verwendet werden soll, stattdessen ODBC gefunden. OLE DB Suport Unicode Charater. Ich hatte es versucht und es hat gut funktioniert. cnn.ConnectionString = "Driver = {Microsoft Excel Driver (* .xls, * .xlsx, * .xlsm * .xlsb)}; DBQ =" _ & ActiveWorkbook.Path & Application.PathSeparator & ActiveWorkbook.Name sollte Ersetzen durch Verbindungszeichenfolge blasen Provider = Microsoft.ACE.OLEDB.12.0; Datenquelle = c: \ myFolder \ myExcel2007file.xlsx; Erweiterte Eigenschaften = "Excel 12.0 Xml; HDR = YES";

danke für Ihr Anliegen