[GELÖST] Hallo allerseits,
ich habe einen Makro für CALC erstellt, der über mehrere Tabellenblätter hinweg ein Wort in einer Zelle findet und den Fokus auf diese Zelle setzt.
Verwendet wird: .uno:ExecuteSearch
Da der Makro immer vom letzten Tabellenblatt aus aufgerufen wird, kommt immer erst die Abfrage ob die Suche am Dokument Anfang fortgesetzt werden soll.
Das möchte ich gerne verhindern. Weiß jemand wie?
Vielleicht ists ja in der ellenlangen "args-Liste" mit dem die Suche aufgerufen wird verborgen, aber wo?
Suchen Makro
Moderator: Moderatoren
Suchen Makro
Zuletzt geändert von dl7gao am So, 20.01.2019 11:58, insgesamt 1-mal geändert.
Re: Suchen Makro
Hallo dl7gao,
dann starte halt das Makro ab dem ersten Tabellenblatt.
Deine Beschreibung hört sich aber sehr stark nach einem aufgezeichneten Makro an. Besser ist aber Du programmierst das richtig. Hier mal eine kleine Hilfe zum Einstieg.
http://www.dannenhoefer.de/faqstarbasic ... l#Zweig210
Gruß
balu
dann starte halt das Makro ab dem ersten Tabellenblatt.
Deine Beschreibung hört sich aber sehr stark nach einem aufgezeichneten Makro an. Besser ist aber Du programmierst das richtig. Hier mal eine kleine Hilfe zum Einstieg.
http://www.dannenhoefer.de/faqstarbasic ... l#Zweig210
Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.
wehr rächtschraipfähler findet khan si behalden
wehr rächtschraipfähler findet khan si behalden
Re: Suchen Makro
Lieber Balu,
Das Problem ist halt, das Suchwort wird auf dem letzten Tabellenblatt eingegeben.
Dort wird halt dann auch der Suchmakro gestartet.
Aber vielen Dank für den Link. Ich lese mich dort mal ein.
Du hast teilweise recht. Es handelt sich um eine modifizierte Aufzeichnung.
Guß Uwe
Das Problem ist halt, das Suchwort wird auf dem letzten Tabellenblatt eingegeben.
Dort wird halt dann auch der Suchmakro gestartet.
Aber vielen Dank für den Link. Ich lese mich dort mal ein.
Du hast teilweise recht. Es handelt sich um eine modifizierte Aufzeichnung.
Guß Uwe
Re: Suchen Makro
Das Makro auf der verlinkten Seite braucht eigentlich nur ganz wenig Anpassung. Das Folgende sollte bereits genügen:
bzw. es reicht schon, wenn der Wert nur einmal vorkommt:
Wenn der Wert hingegen mehrfach vorkommt ist auch das erste Makro unzweckmäßig weil es nicht bei jeder gefundenen Zelle einzeln anhält. Wie man das ändern müsste hängt von Deinen Anforderungen ab.
Gruß
Stephan
Code: Alles auswählen
Sub Main
odoc = thiscomponent
For iSheets = 0 To oDoc.sheets.Count -1
oSheet = oDoc.Sheets( iSheets )
oSearchDescriptor = oSheet.createSearchDescriptor
oSearchDescriptor.SearchString = "XXXX"
oFound = oSheet.FindFirst(oSearchDescriptor)
odoc.CurrentController.Select(oFound)
Do Until isNull(oFound)
oFound = oSheet.FindNext(oFound, oSearchDescriptor)
odoc.CurrentController.Select(oFound)
Loop
Next iSheets
End Sub
Code: Alles auswählen
Sub Main
odoc = thiscomponent
For iSheets = 0 To oDoc.sheets.Count -1
oSheet = oDoc.Sheets( iSheets )
oSearchDescriptor = oSheet.createSearchDescriptor
oSearchDescriptor.SearchString = "XXXX"
oFound = oSheet.FindFirst(oSearchDescriptor)
odoc.CurrentController.Select(oFound)
Next iSheets
End Sub
Gruß
Stephan
Re: Suchen Makro
Lieber Balu, lieber Stefan,
es funktioniert.
Der Tip war genau richtig.
Vielen Dank
Muss ich noch was tun um das hier ordenltich abzuschließen?
es funktioniert.
Der Tip war genau richtig.
Vielen Dank
Muss ich noch was tun um das hier ordenltich abzuschließen?
Re: Suchen Makro
[Gelöst] Vermutlich geht es so.
Vielen Dank nochmal …..
Uwe
Vielen Dank nochmal …..
Uwe