Seite 1 von 1

Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 11:06
von damuschong
sorry, dass ich so viele Fragen habe, aber ich muss leider ;(

in der Spalte A stehen mehrer Zahlen zb. 20798516, 20857224, usw

in dieser Spalte möchte ich nun durch ein Makro die Zahl 2 am Anfang durch "NW" ersetzen.

kann mir jemand bitte helfen ?

danke

Re: Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 11:13
von Karolus
Hallo
-->Suchen und ersetzen:
suche nach
^2
ersetze durch
NW
[x] nur in Selektion
[x] regulärer Ausdruck

Zeichne den Vorgang über '-->Extras-->Makros--Makroaufzeichnen' auf.

Gruß Karo

Re: Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 11:18
von damuschong
DANKE KLAPPT SCHONMAL :)

Re: Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 11:23
von damuschong
jetzt habe ich nur noch das Problem, das ich nicht weiß wie ich im Makro die erste SPalte "markieren" kann ;(

Re: Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 11:40
von Karolus
Hallo

Code: Alles auswählen

bereich = thiscomponent.sheets(0).getcellrangebyposition(0,0,0,60)'Tabelle1.A1:A61
cursor = thiscomponent.currentcontroller()
cursor.select(bereich)
Gruß Karo

Re: Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 11:50
von damuschong
danke, voll nett von dir, klappt alles ;)) vielen vielen dank !!

Re: Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 12:03
von damuschong
auf ein Problem bin ich noch gestoßen.

ich habe die Suchen/Ersetzen funktion durch folgendes Makro erstellt:

Code: Alles auswählen

document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args2(1) as new com.sun.star.beans.PropertyValue
args2(0).Name = "By"
args2(0).Value = 1
args2(1).Name = "Sel"
argS2(1).Value = false

dispatcher.executeDispatch(document, ".uno:GoLeft", "", 0, args2())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
argS3(0).Name = "ToPoint"
args3(0).Value = "$A$1:$A$152"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())

rem ----------------------------------------------------------------------
dim args4(17) as new com.sun.star.beans.PropertyValue
args4(0).Name = "SearchItem.StyleFamily"
args4(0).Value = 2
args4(1).Name = "SearchItem.CellType"
args4(1).Value = 0
args4(2).Name = "SearchItem.RowDirection"
args4(2).Value = true
args4(3).Name = "SearchItem.AllTables"
args4(3).Value = false
args4(4).Name = "SearchItem.Backward"
args4(4).Value = false
args4(5).Name = "SearchItem.Pattern"
args4(5).Value = false
args4(6).Name = "SearchItem.Content"
args4(6).Value = false
args4(7).Name = "SearchItem.AsianOptions"
args4(7).Value = false
args4(8).Name = "SearchItem.AlgorithmType"
args4(8).Value = 1
args4(9).Name = "SearchItem.SearchFlags"
args4(9).Value = 71680
args4(10).Name = "SearchItem.SearchString"
args4(10).Value = "^2"
args4(11).Name = "SearchItem.ReplaceString"
args4(11).Value = "NW"
args4(12).Name = "SearchItem.Locale"
args4(12).Value = 255
args4(13).Name = "SearchItem.ChangedChars"
args4(13).Value = 2
args4(14).Name = "SearchItem.DeletedChars"
args4(14).Value = 2
args4(15).Name = "SearchItem.InsertedChars"
args4(15).Value = 2
args4(16).Name = "SearchItem.TransliterateFlags"
args4(16).Value = 1280
args4(17).Name = "SearchItem.Command"
args4(17).Value = 3

dispatcher.executeDispatch(document, ".uno:ExecuteSearch", "", 0, args4())
Mein Problem ist nun, dass das Makro in der Aktuell sichtbaren Tabelle abläuft, es soll aber in Tabelle 3 ( diese hat den Namen Ergebnis) ablaufen.

was genau muss ich dann in die erste Zeile des Codes schreiben, dort vermute ich meinen Fehler

Re: Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 12:22
von Karolus
Ändere die Zeile 'args3(0).value...' um in
args3(0).Value = "$Ergebnis.$A$1:$A$152"

Re: Zahl ersetzen duch Text

Verfasst: Do, 14.01.2010 12:38
von damuschong
Tausend Dank, das wars ;)