zwischen Blättern wechseln
Moderator: Moderatoren
-
- **
- Beiträge: 29
- Registriert: Mo, 08.11.2010 20:25
zwischen Blättern wechseln
je mehr ich mich mit OOBasic befasse, desto mehr macht es Spaß; aber ich bin schon wieder an einem Zaun:
Beim Kopieren von Zellbereichen unter Verwendung von dispatcher.executeDispatch ( document,"uno:GoToCell" , " ",0,....) bzw. ....." uno:Copy"..... würde ich gerne das Kopieren auf einem Blatt und das Einfügen auf einem anderen Blatt realisieren.
Ohne Uno ist das ja z.B. über ThisComonents.Sheets(x) möglich.
Max
Beim Kopieren von Zellbereichen unter Verwendung von dispatcher.executeDispatch ( document,"uno:GoToCell" , " ",0,....) bzw. ....." uno:Copy"..... würde ich gerne das Kopieren auf einem Blatt und das Einfügen auf einem anderen Blatt realisieren.
Ohne Uno ist das ja z.B. über ThisComonents.Sheets(x) möglich.
Max
Re: zwischen Blättern wechseln
Na das ist doch aus der Makroaufzeichnung ganz leicht ersichtlich, oder schreibst Du dispatcher-Makros per Hand?
Der relevante Abschnitt der Aufzeichnug ist:
wobei der .Value-Wert dem Blattindex plus 1 entspricht, obiges Beispiel springt also vergleichsweise zu .Sheets(2)
Gruß
Stephan
Der relevante Abschnitt der Aufzeichnug ist:
Code: Alles auswählen
dim args(0) as new com.sun.star.beans.PropertyValue
args(0).Name = "Nr"
args(0).Value = 3
dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args())
Gruß
Stephan
-
- **
- Beiträge: 29
- Registriert: Mo, 08.11.2010 20:25
Re: zwischen Blättern wechseln
Ich gebe zu, dass meine Fragen wohl etwas zu freimütig und unbeschwert waren und zu recht zu einem
(aus)lächelnden Verwundern führen mußten.
Wer das Programmieren zur Assembler/RPG-Zeit begann tut sich halt doch schon schwerer.
Trotzdem danke, und ich verspreche, dass meine Fragen weniger werden.
Max
(aus)lächelnden Verwundern führen mußten.
Wer das Programmieren zur Assembler/RPG-Zeit begann tut sich halt doch schon schwerer.
Trotzdem danke, und ich verspreche, dass meine Fragen weniger werden.
Max
Re: zwischen Blättern wechseln
ja, das war bei mir der FAllIch gebe zu, dass meine Fragen wohl etwas zu freimütig und unbeschwert waren und zu recht zu einem
(aus)lächelnden Verwundern führen mußten.
verstehe ich den Zusammenhang nicht, denn ich kenne niemanden der dispatcher-Code quasi lernt um ihn dann per Hand zu schrreiben, was schon deshalb schwierig ist weil es keine Literatur dazu gibt und man deshalb überwiegend gezwungen ist dispatcher-Code aufzuzeichnen um dann nach der Aufzeichnug zu lernen was dort wie abläuft.Wer das Programmieren zur Assembler/RPG-Zeit begann tut sich halt doch schon schwerer.
UNd das allein war das was mich verwiunderte.
Das ist sicher DEine Entscheidung, nur schade finde ich es trotzdem, denn aus Fragen kann man nur lernen.Trotzdem danke, und ich verspreche, dass meine Fragen weniger werden.
Gruß
Stephan
Re: zwischen Blättern wechseln
Hallo!
Da werfe ich doch gleich mal eine Frage ein.
Gibt es dafür auch einen nativen Code (mir gefällt der Dispatcher nicht)?
In Writer kann man ja mit "JumpToPage" zur gewünschten Seite springen (Beispiel für "Eine Seite zurück": myViewCursor.JumpToPage(myViewCursor.getPage() - 1) ).
Nur in Calc scheint es keinen nativen Code zu geben, "myViewCursor.JumpToTable" funktioniert jedenfalls nicht. Geht das mit nativem Code (ausser mit VBA-Code) oder geht das nicht? Danke!
Gruß, René
Da werfe ich doch gleich mal eine Frage ein.
Gibt es dafür auch einen nativen Code (mir gefällt der Dispatcher nicht)?
In Writer kann man ja mit "JumpToPage" zur gewünschten Seite springen (Beispiel für "Eine Seite zurück": myViewCursor.JumpToPage(myViewCursor.getPage() - 1) ).
Nur in Calc scheint es keinen nativen Code zu geben, "myViewCursor.JumpToTable" funktioniert jedenfalls nicht. Geht das mit nativem Code (ausser mit VBA-Code) oder geht das nicht? Danke!
Gruß, René
Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
Re: zwischen Blättern wechseln
ja, fragen ist immer gut, zumal wenn ich in dem anderen Foren bestimmte Dinge lese ...Da werfe ich doch gleich mal eine Frage ein.
Ja, natürlich und das ist sowas Normales das der selbst in der FAQ steht, weil es so häufig gebraucht wird:Gibt es dafür auch einen nativen Code (mir gefällt der Dispatcher nicht)?
http://www.dannenhoefer.de/faqstarbasic ... tiver.html
Du machst Spass ... obiger Code ist was ganz Gewöhnliches und nicht etwa Spezialwissen.Nur in Calc scheint es keinen nativen Code zu geben
Sollte es, wider Erwarten, doch darum gehen zu einer bestimmten Druckseite in Calc zu springen (und nicht zu einem bestimmten Tabellenblatt) weiß ich allerdings tatsächlich keine Lösung.In Writer kann man ja mit "JumpToPage" zur gewünschten Seite springen (Beispiel für "Eine Seite zurück": myViewCursor.JumpToPage(myViewCursor.getPage() - 1) ).
Gruß
Stephan
Re: zwischen Blättern wechseln
Also "setActiveSheet". Danke für den Link! Ist schon in den Favoriten gespeichert. Bis "getByName" war ich schon, nur die letzte Zeile hat gefehlt.
Ja, aber Dispatchercode. Und dieser ist IMHO schwerer zu merken als nativer Code.Du machst Spass ... obiger Code ist was ganz Gewöhnliches und nicht etwa Spezialwissen
Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
Re: zwischen Blättern wechseln
Ja, aber Dispatchercode.
Nein, natürlich nicht denn gemeint war der Link:
http://www.dannenhoefer.de/faqstarbasic ... tiver.html
und ich wollte mit meiner Aussage:
nur deutlich machen das ich es schlicht annehme das man, wenn hinreichend viel Starbasic Programmiert, und das tust Du, und Deutsch Spricht, dann auch Michaels FAQ kennen sollte, und ich es für recht komisch halte zu lesen:Du machst Spass ... obiger Code ist was ganz Gewöhnliches und nicht etwa Spezialwissen.
denn diese Info ist sehr einfach zu ermitteln, keineswegs nur bei Michael.Nur in Calc scheint es keinen nativen Code zu geben
Eigentlich geht es nur darum das man bestimmte Quellen (Michaels FAQ gehört dazu) einfach kennen sollte, nicht weil man das muß, sondern weil es bei normalen Erlernen von StarBasic kaum möglich ist bestimmte Dinge nicht zu kennen, weil man zwangsläufig darüber stolpert.
Gruß
Stephan
Re: zwischen Blättern wechseln
Ich kenne Michaels Seite schon lange, war aber offensichtlich zu blind. Und Google..., naja wer's kann... 

Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security