❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Datumseingabe

CALC ist die Tabellenkalkulation, die Sie immer wollten.
mikele
* LO-Experte *
Beiträge: 1947
Registriert: Mo 1. Aug 2011, 20:51

Re: Datumseingabe

Beitrag von mikele » Sa 29. Nov 2014, 20:31

Hallo F3K Total,
in die Richtung dachte ich auch schon, allerdings, wenn ich mir vorstelle für mehrere Tabellen die entsprechenden Bereiche ins Makro zu programmieren ...
Ich hoffte irgendwie einzelnen Zellen oder Bereichen ein Ereignis zuordnen zu können.
Gruß,
mikele

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Datumseingabe

Beitrag von F3K Total » Sa 29. Nov 2014, 20:56

Vielleicht mit einem eventhandler,
wie wäre es mit

Code: Alles auswählen

function F_Check_CellRange as boolean
    Zellbereiche = array("A2:A500", "B17:B18", "C19")
    oselection = thiscomponent.currentselection
    osheet = thiscomponent.currentcontroller.activesheet
    if oSelection.supportsService("com.sun.star.sheet.SheetCell") then 'Es handelt sichum eine einzelne Zelle
        oCellsRangeAddress = oSelection.RangeAddress
        bfound = false
        for i = 0 to ubound(Zellbereiche)
             oCellRange = oSheet.getCellRangeByName(Zellbereiche(i))'aktiver Bereich in dem die Änderungen vorgenommen werden dürfen
             if oCellRange.queryIntersection(oCellsRangeAddress).count = 1 then
                 bfound = true
                 exit for
             endif
        next i
        if bfound then F_Check_CellRange = true else F_Check_CellRange = false        
    endif
End function
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

mikele
* LO-Experte *
Beiträge: 1947
Registriert: Mo 1. Aug 2011, 20:51

Re: Datumseingabe

Beitrag von mikele » So 30. Nov 2014, 14:02

Hi,
da fiel mir ein, den gewünschten Zellbereichen einen Namen zu verpassen (Schema: datum_tabellenname) und dann mit F3K Total's Code-Schnipsel zu kombinieren.

Code: Alles auswählen

function F_Check_CellRange as boolean
    oselection = thiscomponent.currentselection
    osheet = thiscomponent.currentcontroller.activesheet
    oCellRange = oSheet.getCellRangeByName("datum_" & osheet.name)'aktiver Bereich in dem die Änderungen vorgenommen werden dürfen
    if oSelection.supportsService("com.sun.star.sheet.SheetCell") then 'Es handelt sichum eine einzelne Zelle
        oCellsRangeAddress = oSelection.RangeAddress
        if oCellRange.queryIntersection(oCellsRangeAddress).count = 1 then F_Check_CellRange = true else F_Check_CellRange = false
        'Die selektierte Celle liegt in dem benannten Bereich          
    endif
End function
Gruß,
mikele


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten