Hallo zusammen,
ich habe das folgende Problem:
ich lese automatisiert Texte aus einer Excel-Datei. Bei deutschen Texte funktioniert das problemlos, aber bei russischen kommt nur "Müll" heraus.
Hier mal ein Stück Quellcode:
Im Debugger (Auswerten/Ändern-Dialog) kann man erkennen, dass in Range.Value noch eine Zeichenfolge drin steht (z.B. K204DK>24>FC:I3K2O6L0M6G2FC), die aber macht keinen Sinn. In Variable s stehen dann nach der Zuweisung nur noch Fragezeichen.
Muss ich Range.Value irgendwie konvertieren? Wenn ja, wie?
Komm hier einfach nicht weiter und wäre für eure Tipps sehr dankbar.
Gruß Andy
ich habe das folgende Problem:
ich lese automatisiert Texte aus einer Excel-Datei. Bei deutschen Texte funktioniert das problemlos, aber bei russischen kommt nur "Müll" heraus.
Hier mal ein Stück Quellcode:
HTML Code:
procedure TForm1.cb_readClick(Sender: TObject); var s_ExcelFile: string; s: WideString; sl: TStringList; i: integer; Excel: Excel97.TExcelApplication; Workbook: Excel97.TExcelWorkbook; Worksheet: Excel97._Worksheet; Range: Excel97.Range; begin s_ExcelFile := ExtractFilePath(Application.ExeName) + 'Files\input.xls'; // Excel-Verbindung erstellen Excel := TExcelApplication.Create(nil); Excel.Connect; Workbook := TExcelWorkbook.Create(nil); Workbook.ConnectTo(Excel.WorkBooks.Add(s_ExcelFile, 0)); WorkSheet:= Workbook.Sheets.Item[1] as _WorkSheet; sl := TStringList.Create; try for i:=1 to Worksheet.Rows.Count do begin Range := Worksheet.Range['A' + IntToStr(i), 'A' + IntToStr(i)]; s := Range.Value; if s = '' then break; sl.Add(s); end; finally // Excel-Verbindung trennen Excel.Quit; Excel.Disconnect; Excel := nil; end; // Texte in Textdatei speichern sl.SaveToFile(ExtractFilePath(Application.ExeName) + 'Files\output.txt'); end;
Muss ich Range.Value irgendwie konvertieren? Wenn ja, wie?
Komm hier einfach nicht weiter und wäre für eure Tipps sehr dankbar.
Gruß Andy
Comment