🙏 Bitte helfen Sie uns das LibreOffice Forum zu erhalten. 🙏
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🍀 Wir hoffen auf Ihre Unterstützung - vielen Dank!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
[GELÖST] Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen
[GELÖST] Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen
Hallo zusammen!
Mit einem Makro würde ich gerne einen gefundenen Kleinbuchstaben, der unmittelbar nach einem Punkt steht, durch seinen Großbuchstaben ersetzen, also a durch A und z durch Z.
Suchen nach „\.[a-zäöü]“ kann ich.
Aber wie mache ich aus dem gefunden Buchstaben den entsprechenden Buchstaben im ReplaceString?
Wie kann man auf einen mit „\.([a-zäöü])“ gefundenen Teilstring zugreifen und ihn verändern?
Vielen Dank im Voraus!
Lienucks
Mit einem Makro würde ich gerne einen gefundenen Kleinbuchstaben, der unmittelbar nach einem Punkt steht, durch seinen Großbuchstaben ersetzen, also a durch A und z durch Z.
Suchen nach „\.[a-zäöü]“ kann ich.
Aber wie mache ich aus dem gefunden Buchstaben den entsprechenden Buchstaben im ReplaceString?
Wie kann man auf einen mit „\.([a-zäöü])“ gefundenen Teilstring zugreifen und ihn verändern?
Vielen Dank im Voraus!
Lienucks
Zuletzt geändert von Lienucks am Sa 11. Jan 2020, 11:28, insgesamt 1-mal geändert.
Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen
Hallo,
ich wüsste nicht, dass die üblichen Stringfunktionen von Basic reguläre Ausdrücke verarbeiten.
Folgendes sollte dein Problem lösen:
ich wüsste nicht, dass die üblichen Stringfunktionen von Basic reguläre Ausdrücke verarbeiten.
Folgendes sollte dein Problem lösen:
Code: Alles auswählen
'Eingangstext
sText="edd.ade.A.-.."
aTeile=split(sText,".")
for i=1 to ubound(aTeile())
aTeile(i)=ucase(left(aTeile(i),1)) & mid(aTeile(i),2)
next
'Ergebnis
sText=join(aTeile,".")
Gruß,
mikele
mikele
Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen
Hoppla! Das sieht ja kompliziert aus. Aber herzlichen Dank!!
Ich werde mal versuchen, etwas draus zu machen, und melde mich in ein paar Tagen wieder.
Und dann bin ich gespannt, wie das mit einem Text mit einer Viertelmillionzeichen in einer Variablen funktioniert.
Lienucks
Ich werde mal versuchen, etwas draus zu machen, und melde mich in ein paar Tagen wieder.
Und dann bin ich gespannt, wie das mit einem Text mit einer Viertelmillionzeichen in einer Variablen funktioniert.
Lienucks
Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen
Ja, das wird spannend.

Code: Alles auswählen
Sub SimpleSearch2
oDescriptor = ThisComponent.createSearchDescriptor()
oDescriptor.SearchRegularExpression=True
oDescriptor.SearchCaseSensitive = True
oDescriptor.SearchString = "\.[a-zäöü]"
oFoundAll = ThisComponent.findAll(oDescriptor)
msgbox oFoundAll.getCount()
For n = 0 to oFoundAll.getCount()-1
oFound = oFoundAll.getByIndex(n)
oFound.setString(ucase(oFound.getString()))
Next
End Sub
Win7 Pro, Sibelius 7.1.3, Lubuntu 15.10, LibO 4.4.7, OO 4.1.3
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html
Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen
Das macht Hoffnung- herzlichen Dank!
Leider komme ich derzeit nicht dazu, das auszuprobieren.
Aber ich werde Rückmeldung geben, ob es mein Problem löst!
Bis dann!
Lienucks
Leider komme ich derzeit nicht dazu, das auszuprobieren.
Aber ich werde Rückmeldung geben, ob es mein Problem löst!
Bis dann!
Lienucks
Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen
Das Skript von musikai funktioniert wunderbar! Mein Problem ist gelöst - herzlichen Dank!!!
Lienucks
Lienucks
Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen
Hallo Lienucks,
dann bearbeite deinen ersten Eintrag zu dem Thema:
Setze vor das Thema den Vermerk [GELÖST] und schicke den Eintrag so noch einmal ins Forum ab.
Gruß,
Mau
dann bearbeite deinen ersten Eintrag zu dem Thema:
Setze vor das Thema den Vermerk [GELÖST] und schicke den Eintrag so noch einmal ins Forum ab.
Gruß,
Mau
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.