Hallo,

Sorry, ist jetzt ein wenig auf die Schnelle, aber Du willst ja sicher
noch eine Lösung finden

Guido H. Dirkes schrieb:
> - oo wird deutlich langsamer ;-(

ein wenig könnte man das beschleunigen, müßte ich aber am konkreten
Objekt testen

> - falls der Name nicht existiert, wird das Ergebnis des
> letzten Aufrufs
> angezeigt

naja, ich hatte keine Fehlerroutine integriert, könnte man tun

> - Wenn ich die Tabelle schließe und wieder öffne, dann
> beklagt sich OO indem
> es das Macro Menu aufmacht und über Zeile
> x = ThisComponent.NamedRanges.CreateEnumeration
> klagt, dass "Unzulässiger Wert oder Datentyp. / Datentypen
> unverträglich".
> Leider macht er das für jeden Aufruf des Macros einmal....

müßte ich auch erst testen

Auf die Schnelle:

*mache eine Hilfstabelle und gib ihr den Namen "Hilfstabelle"
*lass dieses Makro laufen:

Sub Main
x = ThisComponent.NamedRanges.CreateEnumeration
i = -1
Do
        I = i + 1
        y = x.nextElement

ThisComponent.Sheets().GetByName("Hilfstabelle").GetCellByPosition(0,i).
String = y.Name

ThisComponent.Sheets().GetByName("Hilfstabelle").GetCellByPosition(1,i).
String = y.Content
Loop While x.hasMoreElements
End Sub

*nun hast Du eine tabellarische Aufstellung der Bereiche in der
Hilfstabelle
*verwende jetzt statt:

=SUMME(INDIREKT(ERSETZEN($C23;LÄNGE($C23)+1;1;"_Heat")))

solche Ausdrücke:

=SUMME(INDIREKT(SVERWEIS(ERSETZEN($C23;LÄNGE($C23)+1;1;"_Heat");Hilfstab
elle.A1:B10;2;0)))

beachte dabei den Bereich Hilfstabelle.A1:B10 hinreichend groß zu wählen
das alles erfasst ist, er kann größer sein

Das ist nun eine schnelle Beschreibung wie das per Hand geht, es wäre
alles noch besser zu automatisieren, aber sag uns erstmal ob das Prinzip
akzeptabel wäre.



Gruß
Jörg


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Antwort per Email an