Hallo Volker, Vielen Dank für die prompte Hilfestellung! Verstanden und ok.
Erstaunlich: für intZeilenNr = [a5].End(xlDown).Row nun 4 Variable und 5 Codezeilen. Erst vor einigen Tagen habe ich OOo installiert, da bei mir seit einiger Zeit Excel immer wieder abstürzt. Nach längerem Googeln und Literaturbeschaffung verstehe ich so ungefähr die OOo-Philosophie, scheitere aber wieder an simplen Basic-Details bei einer Umsetzung meines VBA-Codes. Die Maillinglisten-Regeln habe ich noch nicht gesehen - wo kann ich sie finden? . Nochmals besten Dank und freundliche Grüsse. Dieter Schönfelder -----Ursprüngliche Nachricht----- Von: Volker Heggemann [mailto:[email protected]] Gesendet: Freitag, 10. September 2010 13:21 An: [email protected] Betreff: Re: [de-users] Basic-Code für Zeilennummer unterste Zelle in Spalte mit Daten Hallo Dieter, vielleicht hat Dir noch keiner geantwortet, weil Du eigentlich auch keinen angesprochen hast? Wir reden uns hier mit DU an (aber wir reden uns an - siehe Maillinglisten Regeln). Nun denn, ich antworte einmal. > > > Wie kann ich in OpenOffice.org Basic Calc > > die Tastenkombination Ctrl + Nach Unten > > (Springt zur untersten Zelle in dieser Spalte, die Daten enthält) > > in einem Modul-Code darstellen > > und die Zeilennummer auslesen ? Hier mal der Code als Funktion. Und weil wir schon einmal dabei sind, auch gleich eine für die letzte Spalte. ----schnippeldie-----Macro Basic Code---------------------- Function letztespalte as Integer Dim oSheet as Object Dim oCell As Object Dim oCursor As Object Dim OCursorpos As Variant OSheet = ThisComponent.Sheets.getByIndex( 0 ) oCell = oSheet.GetCellbyPosition( 0, 0 ) oCursor = oSheet.createCursorByRange(oCell) oCursor.GotoEndOfUsedArea(True) OCursorpos = oCursor.RangeAddress letztespalte = OCursorpos.EndColumn End Function Function letztezeile as Integer Dim oSheet as Object Dim oCell As Object Dim oCursor As Object Dim OCursorpos As Variant OSheet = ThisComponent.Sheets.getByIndex( 0 ) oCell = oSheet.GetCellbyPosition( 0, 0 ) oCursor = oSheet.createCursorByRange(oCell) oCursor.GotoEndOfUsedArea(True) OCursorpos = oCursor.RangeAddress letztezeile = OCursorpos.EndRow End Function ----schnippelda------Macro Basic Code Ende---------------------- Wenn Du das so als Macro in Dein Dokument oder die Standard Bibliothek (ich meine: Meine Macros - Standard) übernimmst, dann kannst Du innerhalb einer Tabelle den Funktionsaufruf in eine Zelle schreiben. z.B. Zelle C1 eintragen =letztezeile() Gruß Volker Heggemann --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
