Libre Office Calc Makro zum Ersetzen von Sonderzeichen in BASIC

Posted on 22. Mai 2014 Comments

Dieses Makro ersetzt in einem LibreOffice Calc Sheet alle norwegischen Sonderzeichen (å, ø, æ) durch ASCII kompatible Zeichen.

Sub NO_WITHOUT_SPECIAL_CHARS()

    dim oSheet as object, mySuche as Object
    'erste Tabelle
    oSheet = thisComponent.Sheets.getByIndex(0)
    mySuche=oSheet.createReplaceDescriptor()
    
    With mySuche
    .SearchRegularExpression = False
    .setSearchString("å")
    .setReplaceString("a")
    end With
    oSheet.replaceAll(mySuche)
    
    With mySuche
    .SearchRegularExpression = False
    .setSearchString("ø")
    .setReplaceString("o")
    end With
    oSheet.replaceAll(mySuche)

    With mySuche
    .SearchRegularExpression = False
    .setSearchString("æ")
    .setReplaceString("ae")
    end With
    oSheet.replaceAll(mySuche)
End Sub

Eine Anleitung, wie man das Makro in die Symbolleiste bekommt, findet sich im OpenOffice Wiki.

Flattr this!

Comments

  1. Hier noch der Code um beim Import „verlorene“ Umlaute wieder lesbar zu machen (Danke für den Gedankenanstoß):
    REM ***** BASIC *****

    Sub Main
    dim oSheet as object, mySuche as Object
    ‚erste Tabelle
    oSheet = thisComponent.Sheets.getByIndex(0)
    mySuche=oSheet.createReplaceDescriptor()

    With mySuche
    .SearchRegularExpression = False
    .setSearchString(„ä“)
    .setReplaceString(„ä“)
    end With
    oSheet.replaceAll(mySuche)

    With mySuche
    .SearchRegularExpression = False
    .setSearchString(„ö“)
    .setReplaceString(„ö“)
    end With
    oSheet.replaceAll(mySuche)

    With mySuche
    .SearchRegularExpression = False
    .setSearchString(„ü“)
    .setReplaceString(„ü“)
    end With
    oSheet.replaceAll(mySuche)

    With mySuche
    .SearchRegularExpression = False
    .setSearchString(„ß“)
    .setReplaceString(„ß“)
    end With
    oSheet.replaceAll(mySuche)

    With mySuche
    .SearchRegularExpression = False
    .setSearchString(„Ä“)
    .setReplaceString(„Ä“)
    end With
    oSheet.replaceAll(mySuche)

    With mySuche
    .SearchRegularExpression = False
    .setSearchString(„Ö“)
    .setReplaceString(„Ö“)
    end With
    oSheet.replaceAll(mySuche)

    With mySuche
    .SearchRegularExpression = False
    .setSearchString(„Ã „)
    .setReplaceString(„Ü“)
    end With
    oSheet.replaceAll(mySuche)

    End Sub

Pings

  1. Alle norwegischen Sonderzeichen in Dateinamen ersetzen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.