Suchen und Ersetzen - nur ganze Zellen

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

Moderator: Moderatoren

Hömmelmann
****
Beiträge: 119
Registriert: Di, 28.11.2006 19:44
Wohnort: Meppen

Suchen und Ersetzen - nur ganze Zellen

Beitrag von Hömmelmann »

Hallo,

ich möchte in einem Calc Dokument. Damit habe ich nur ein kleines Problem:

Ich möchte nur ganze Zellen bearbeiten und suche somit den Code für diese Einstellung.
Der bisherige Code sieht folgendermaßen aus:

ReplaceDescriptor= mySheet.createReplaceDescriptor()
ReplaceDescriptor.SearchString = "/"
ReplaceDescriptor.ReplaceString = ""
mySheet.ReplaceAll(ReplaceDescriptor)


Danke schon mal für die Unterstützung


Friedhelm
inqui
**
Beiträge: 26
Registriert: Di, 09.12.2008 08:16

Re: Suchen und Ersetzen - nur ganze Zellen

Beitrag von inqui »

du meinst nur zeilen in ganzzahligen zeilen?

lies die zeilennummer aus, teile die durch 2 - dann bleibt ein rest, oder nicht. rest = ungerade, kein rest = gerade
Hömmelmann
****
Beiträge: 119
Registriert: Di, 28.11.2006 19:44
Wohnort: Meppen

Re: Suchen und Ersetzen - nur ganze Zellen

Beitrag von Hömmelmann »

Hallo,


nein ich will nicht nur ganzzahlige Zeilen bearbeiten, sondern nur den Inhalt ganzer Zellen durch Suchen/Ersetzen bearbeiten.

z.B. habe ich nach einem DB-Export in vielen Zellen nur einen Bindestrich ( - ) stehen. Den möchte ich entfernen, also durch "" ersetzen.
Das soll aber nicht für Trennen in anderen Begriffen gelten.

In dem OO Menüpunkt Bearbeiten/Suchen&Ersetzen kann man diese Option anklicken unter "Nur ganze Wörter".

Gruß, Friedhelm
inqui
**
Beiträge: 26
Registriert: Di, 09.12.2008 08:16

Re: Suchen und Ersetzen - nur ganze Zellen

Beitrag von inqui »

ich würde das irgendwie in der form machen:

Code: Alles auswählen

for n = 0 to x
	if thiscomponent.sheets(0).getcellbyposition(0,n).string = "-" then
		thiscomponent.sheets(0).getcellbyposition(0,n).string = ""
	end if
next
wobei das für die erste spalte im ersten sheet gilt und x = letzte zu durchsuchende zeile ist
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Suchen und Ersetzen - nur ganze Zellen

Beitrag von komma4 »

Hömmelmann hat geschrieben:Bindestrich ( - ) stehen. Den möchte ich entfernen, also durch "" ersetzen.
Das soll aber nicht für Trennen in anderen Begriffen gelten.

Code: Alles auswählen

ReplaceDescriptor= mySheet.createReplaceDescriptor()
With ReplaceDescriptor
   .SearchString = "-"
   .ReplaceString = ""
   .SearchWords = TRUE
End With
mySheet.ReplaceAll(ReplaceDescriptor)

SearchWords = TRUE
entspricht der Einstellung only complete words will be found
Installiere Dir das SDK, dann findest Du so etwas über die Indexsuche.

Klappt es damit? (mir ist unklar, was Du mit "Trennen in anderen Begriffen" meinst? Kommen die Bindestriche auch in anderen Zellen vor? Dann nehme nicht das ganze Blatt zum Suchen/Ersetzen, sondern nur die Spalten, die Du tatsächlich bearbeiten möchtest)
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)
Hömmelmann
****
Beiträge: 119
Registriert: Di, 28.11.2006 19:44
Wohnort: Meppen

Re: Suchen und Ersetzen - nur ganze Zellen

Beitrag von Hömmelmann »

Ja, danke, das war genau das, was ich suchte.


Schönes Wochenende pp

Friedhelm
Antworten