Unicode ersetzen in cells

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Unicode ersetzen in cells

Beitrag von komma4 »

Abgesehen davon, dass Du:
  • in der Schleife den falschen Index hast,
    beim .replaceAll den Tippfehler oDoc anselle oDok ,
    und neue Variablennamen für die zwei Arrays verwendest 8)
funktioniert Dein Code ohne Weiteres in einem Writer-Dokument.
Bei einem Calc-Dokument kommt die besagte Fehlermeldung, da dort der Descriptor auf ein Blatt (Sheet) bezogen werden muss.



Was meinst Du also mit cells?
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Unicode ersetzen in cells

Beitrag von turtle47 »

Hi,
kevinxu_unregisted hat geschrieben:oErsetzBeschr = oDok.createReplaceDescriptor() 'dieser Satz laeuft nicht,es meldet :Eigenschaft oder Methode nicht gefunden.
Wenn Du in einem Calc-Doc arbeitest dann musst Du in dem Sheet suchen!

Hier mal ein funktionierender Code:

Code: Alles auswählen

Sub Main
	odoc = thiscomponent
	oSheet = oDoc.Sheets.getbyName("Tabelle1") 'Tabellenname anpassen!!
	oErsetzBeschr = oSheet.createSearchDescriptor

	With oErsetzBeschr
		.SearchRegularExpression = FALSE
		.SearchCaseSensitive = FALSE
	end with

	hexarr=Array("C4" ,"D6" ,"DC" ,"DF" ,"E4" ,"F6" ,"FC" ,_
	"A1" ,"BF" ,"E1" ,"E9" ,"ED" ,"F3" ,"FA" ,"F1" ,"D1" ,_
	"E0" ,"E2" ,"E7" ,"F4" ,"E9" ,"E8" ,"EA" ,"EB" ,"EE" ,"FB" ,"F9" ,"BD")

	accarr=Array("Ä","Ö","Ü","ß","ä","ö","ü",_
	"¡","¿",",á","é","í","ó","ú","ñ","Ñ",_
	"à","â","ç","ô","é","è","ê","ë","î","û","ù","œ")

	For n = lbound(hexarr()) To ubound(hexarr())
		oErsetzBeschr.SearchString = hexarr(n)
		oErsetzBeschr.ReplaceString = accarr(n)
		oSheet.replaceAll(oErsetzBeschr)
	Next n

End Sub
Viel Erfolg

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Antworten