Verketten von einem dynamischen Berech

Hallo zusammen,
ich habe hier ein Problem, das ich zwar gelöst habe aber es wundert mich ein wenig das es nicht einfacher geht. Es wurde eine „riesige Mammutformel“. Gesucht wird das verketten von einem dynamischen Berech.

Hintergrund:
http://www.mayhemmichi.de/echo/TempJean144.htm
In Spalte C befindet sich als Index, eine aufsteigende Zahl von 1 bis max. 20
Alle Zeilen gehören zusammen bis der Index wieder mit 1 beginnt,
Abhängig von dieser Zahl sollen alle Texteinträge aus Spalte F verkettet werden.
Die Lösung muss auch in OOffice funktionieren deshalb ziehe ich eine Formellösung vor.

Vielleicht gibt es ja noch eine andere Lösung,
Freue mich auf Antworten,
schöne Grüße
Holger

Hallo Holger,

meine Lösung war einen Tick kürzer und kam ohne Hilfsspalte aus aber das löst ja nicht das Grundproblem, letztlich lief es auch auf eine lange Formel hinaus.

Eine eigene Funktion in OO geht gar nicht?

Gruß
Reinhard

Eine eigene Funktion in OO geht gar nicht?

Ehrlich gesagt, ich weiß es nicht.
Die Datei gehört unserer Tontechnik und hat ca. 3000 Zeilen. [Archiv Geräusche]
In der Excel-Datei läuft seit ca. 2Jahren ein VBA-Funktion.
Der Versuch diese Datei mit OO zu öffnen ist gescheitert.
OO bleibt einfach hängen.
Mit den Daten, ohne VBA aber mit der Formel oben läuft OO.
Keine Ahnung warum. Ich kopiere den Code noch mal hier drunter,
aber ich glaube ich lasse es einfach so.

Gruß Holger

Funktion
=VERKETTENWENN($C$1:blush:C$13;C1;$D$1:blush:D$13)

Option Explicit

Function VerkettenWenn(Bereich As Range, Suchkriterien As Variant, Optional Verketten_Bereich As Variant) As String
Dim r As Range, i As Long, j As Integer, s As String

If IsMissing(Verketten_Bereich) Then
Set r = Bereich
Else
Set r = Verketten_Bereich
End If
For i = 1 To Bereich.Rows.Count
For j = 1 To Bereich.Columns.Count
If Bereich.Cells(i, j).Value = Suchkriterien Then s = s & " " & r(i, j).Value
Next
Next
VerkettenWenn = Mid(s, 2)
End Function

Grüezi Holger

Die Datei gehört unserer Tontechnik und hat ca. 3000 Zeilen.
[Archiv Geräusche]
In der Excel-Datei läuft seit ca. 2Jahren ein VBA-Funktion.
Der Versuch diese Datei mit OO zu öffnen ist gescheitert.
OO bleibt einfach hängen.
Mit den Daten, ohne VBA aber mit der Formel oben läuft OO.
Keine Ahnung warum.

Ja, OO kann nunmal kein VBA und wenn in der Mappe eine Benutzerdefinierte Funktion enthalten und in den Zellen auch verwendet wird, dann kann sie nicht korrekt geöffnet und dargestellt werden.

Ich kopiere den Code noch mal hier drunter,
aber ich glaube ich lasse es einfach so.

Ja, das denke ich auch - mit einer funktionierenden Formel-Lösung läuft die Mappe in beiden Umgebungen.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

In der Excel-Datei läuft seit ca. 2Jahren ein VBA-Funktion.

Hallo Holger,

also müßte auch eine OO-Function klappen.

Schau mal hier bzw. in dem dortigen OO-Forum, da sieht man wie Funktionen in OO aussehen.

http://www.spotlight.de/zforen/sto/m/sto-1142682636-…

Ist natürlich eine Riesenrumprobiererei.

Gruß
Reinhard

http://www.spotlight.de/zforen/sto/m/sto-1142682636-…
Ist natürlich eine Riesenrumprobiererei.

Hallo Holger,

selten bei mir, aber ich geb da erstmal auf mit dem OO :frowning:

Dieser Code klappt zwar in OO:

sub test()
Dim Doc As Object
Dim Sheet As Object
Dim Cell As Object
Doc = ThisComponent
Sheet = Doc.Sheets(0)
Cell = Sheet.getCellByPosition(0, 0)
Cell.String = „Test“
end sub

aber wenn ich auf „getCellByPosition“ gehe und F1 drücke findet er dazu keine Hilfe.

Hier ist zwar eine gut erklärte Seite:

http://wiki.services.openoffice.org/wiki/Documentati…

aber das dauert ja Monate bis ich da für z.B. deine Problematik mir die Befehle zusammengesucht habe auf der hauptseite:

http://wiki.services.openoffice.org/wiki/MediaWiki:C…

Btw. hier ist noch ein hilfreicher Link:

http://de.openoffice.org/foren.html

Gruß
Reinhard