Seite 1 von 1

Abhängigkeiten auflisten

Verfasst: Di 22. Dez 2015, 00:27
von SvenKo
Ich suche eine Lösung Abhängigkeiten zu visualisieren.
Gegeben ist eine Tabelle mit 4 Spalten. Den Werten in Spalte 1 sind teilweise bis zu 3 Abhängigkeiten zugewiesen. Diese Abhängigkeiten sollen ausgegeben werden. Wohin ist ersteinmal egal. Es kann unterhalb der derzeitigen Auflistung sein oder in einer neuen Tabelle.
Gibt es eine Möglichkeit so etwas rein in Calc zu lösen oder nur mit Hilfe von Makros?

Bzw. mit welchen Stichworten könnte ich hier Suchen, falls es für derartige Fragen schon Lösungen gibt? Bisher habe ich nichts wirklich Brauchbares gefunden :-/

Anbei eine Beispieldatei. Im zweiten Tabellenblatt sind Beispiele für die Ausgabe der Abhängigkeiten dargestellt.

Mfg
Sven

LLO 4.3.3.2

Re: Abhängigkeiten auflisten

Verfasst: Di 22. Dez 2015, 12:37
von F3K Total
Hi,
das läßt sich vermutlich auch mit Formel lösen, ich habe mal ein Makro geschrieben:

Code: Alles auswählen

Sub Transform_Matrix
    odoc = ThisComponent
    osheets = odoc.sheets
    osheet = oSheets.getbyName("Gegeben")
    oCursor = oSheet.createCursor
    oCursor.gotoEndOfUsedArea(false)
    nEndrow = oCursor.RangeAddress.Endrow
    oNRange = oSheet.getcellrangebyposition(0,1,0,nEndrow)
    oVRange = oSheet.getcellrangebyposition(1,1,3,nEndrow)
    aNData = oNRange.dataarray
    aVData = oVRange.dataarray
    nCounter = 0
    dim aOutput(0) as Variant
    aOutput(0) = array()
    for i = 0 to uBound(aNData)
        Srow = JOIN(aVData(i),"")
        if sRow > "" then
            if nCounter > 0 then
                redim preserve aOutput(nCounter)   
                sOutput = array("")'Leerzeile
                aOutput(nCounter) = sOutput
                nCounter = nCounter + 1
            endif
            redim preserve aOutput(nCounter)   
            sOutput = array("Abhängigkeiten von " & aNData(i)(0))
            aOutput(nCounter) = sOutput
            nCounter = nCounter + 1           
            for k = 0 to 2
                 if aVData(i)(k)<>"" then
                     redim preserve aOutput(nCounter)
                     aOutput(nCounter) =  array(aVData(i)(k))
                     nCounter = nCounter + 1
                 endif         
             next k
        endif
    next i
    nCounter = nCounter - 1
    oTargetSheet = oSheets.getbyName("Ausgabe")
    aTargetRange = oTargetSheet.getCellRangeByPosition(0,0,0,nCounter)
    aTargetRange.setdataarray(aOutput)
    odoc.currentController.activeSheet = oTargetSheet
End Sub
Siehe Beispieldatei.

Damit das Makro laufen darf, stellst du unter Extras/Optionen(Einstellungen)/Openoffice oder LibreOffice/Sicherheit/Makrosicherheit mindestens die Stufe "Mittel" ein, dann wirst du beim Öffnen von Dokumenten gefragt, ob du Makros ausführen möchtest.

Gruß R

Re: Abhängigkeiten auflisten

Verfasst: Mi 23. Dez 2015, 00:38
von SvenKo
Vielen Dank F3K Total
Das sieht schon mal interessant aus. Mal sehn wie ich das anpassen kann.
Ziel soll es sein ein Modul vorzugeben und dann alle Abhängigkeiten dazu aufzulisten. Na mal schaun :-)

Re: Abhängigkeiten auflisten

Verfasst: Mi 23. Dez 2015, 08:15
von paljass
Hallo SvenKo,
ich hab dir mal ne Formellösung versucht zu erstellen.

Gruß
paljass

Re: Abhängigkeiten auflisten

Verfasst: Do 24. Dez 2015, 01:08
von SvenKo
Hallo paljass

Ein interessanter Ansatz.
Wie funktioniert das mit dem Aufklappen der auszuwählenden "Module" in der Zelle G5?
Das habe ich bisher noch nicht gesehen gehabt.

Re: Abhängigkeiten auflisten

Verfasst: Do 24. Dez 2015, 06:30
von paljass
Moin,
Wie funktioniert das mit dem Aufklappen der auszuwählenden "Module" in der Zelle G5?
Daten - Gültigkeit

Gruß
paljass

Re: Abhängigkeiten auflisten

Verfasst: Do 24. Dez 2015, 11:42
von SvenKo
Super Danke