Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1508to1512
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ein Fall für AGGREGAT - mal etwas anders

Ein Fall für AGGREGAT - mal etwas anders
16.08.2016 21:41:52
Luc:-?
N'Ahmt, AGGREGATerinnen und -GATer;
für diese Aufgabe kann man AGGREGAT mal ganz regulär einsetzen, um die Verwendung von HilfsZellen zu vermeiden:
 ABCDEFGHIJK
1OriginalErgebnisAnfIndexEndIndexDaten← StandardErgebnisAnfIndexEndIndexDaten← UDFs (VBA)
2Früh2× Früh23Früh(singul MxFmln)2× Früh23Früh(plurale MxFmln)
3Früh2× Spät45Spät 2× Spät45Spät 
4Spät1× Frei66Frei 1× Frei66Frei 
5Spät2× Nacht78Nacht 2× Nacht78Nacht 
6Frei4× Frei912Frei 4× Frei912Frei 
7Nacht2× Früh1314Früh 2× Früh1314Früh 
8Nacht2× Frei1516Frei 2× Frei1516Frei 
9Frei2× Spät1718Spät 2× Spät1718Spät 
10Frei1× FrühSonntag1919FrühSonntag 1× FrühSonntag1919FrühSonntag
11Frei#ZAHL!#ZAHL!#ZAHL!#ZAHL! #NV#NV#NV#NV 
12FreiB2[:B10]: {=AGGREGAT(15;4;WENN(A$2:A$19=A$3:A$20;"";ZEILE(A$2:A$19));ZEILE(A1))-AGGREGAT(15;4;WENN(A$2:A$19=A$1:A$18;"";ZEILE(A$2:A$19));ZEILE(A1))+1&"× "&INDEX(A$1:A$19;AGGREGAT(15;4;WENN(A$2:A$19=A$1:A$18;"";ZEILE(A$2:A$19));ZEILE(A1)))}
13FrühC2[:C10]: {=AGGREGAT(15;4;WENN(A$2:A$19=A$1:A$18;"";ZEILE(A$2:A$19));ZEILE(A1))}
14FrühD2[:D10]: {=AGGREGAT(15;4;WENN(A$2:A$19=A$3:A$20;"";ZEILE(A$2:A$19));ZEILE(A1))}
15FreiE2[:E10]: {=INDEX(A$1:A$19;AGGREGAT(15;4;WENN(A$2:A$19=A$1:A$18;"";ZEILE(A$2:A$19));ZEILE(A1)))}
16FreiG2:G10: {=VSplit(VJoin(WENN(A2:A19=A3:A20;"";ZEILE(A2:A19));;-1);;1;1)-VSplit(VJoin(WENN(A2:A19=A1:A18;"";ZEILE(A2:A19));;-1);;1;1)+1&"× "&DataSet(NoErrRange(A2:A19;;A2:A19≠A1:A18);A2;;;1)}
17SpätH2:H10: {=VSplit(VJoin(WENN(A2:A19=A1:A18;"";ZEILE(A2:A19));;-1);;1;1)}
18SpätI2:I10: {=VSplit(VJoin(WENN(A2:A19=A3:A20;"";ZEILE(A2:A19));;-1);;1;1)}
19FrühSonntagJ2:J10: {=DataSet(NoErrRange(A2:A19;;A2:A19≠A1:A18);A2;;;1)}

Dabei handelt es sich bei den Spalten C:E und H:J nicht um HilfsZellen, sondern nur um eine Demonstration des Ergebnisses der zugrunde­liegenden TeilFmln der Fml(n) in Spalte B (bzw G). Der 2.Block (G:J) enthält eine Lösung (gleichen Ergebnisses) auf der Basis meiner Standard-UDFs VJoin/Vs1.4 und VSplit/Vs1.5* und der UDFs NoErrRange und DataSet (beide Vs1.3) zum Vergleich.
Die AGGREGAT-Lösung ist ab Xl-Vs 14/2010, die UDF-Lösung ab Xl-Vs 9/2000 möglich.
Hinweis: Die dklroten Fehler wdn gezeigt, wenn die Fmln des 1.Blocks über Zeile 10 hinaus gezogen bzw die des 2.Blocks auf eine größere Markierung ausgedehnt wdn.
* Es kann auch Vs1.1 verwendet wdn, dann ist aber zusätzlich MTRANS (anstelle des entfallenden 4.Arguments) erforderlich.
Feedback nicht unerwünscht! Gruß, Luc :-?
Besser informiert mit …

29
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: aber bitte nicht so ...
17.08.2016 09:26:26
...
Hallo Loki @alle Interessierten,
... wie ich das sehe habe ich eben auch hier: http://www.online-excel.de/fom/fo_read.php?f=1&bzh=87348&h=87299&ao=1#a123x schon festgehalten.
Ein spez. Matrixformelabschlusses der Formel ist bei entsprechender Konstruktion der Formel eben gerade nicht notwendig. Dies ist ja gerade ein Vorteil derartiger Matrixfunktion(alität)sformeln.
Im konkreten Beispiel würde mein {}-freier Formelvorschlag in D2 schon auf dem ersten Blick das mit Deinem Vorschlag vergleichbare Ergebnis liefern. Auf den zweiten Blick ist meine Formel sogar auch weniger anfällig gegenüber Datenmanipulationen wie Deine Formel. Was ich damit meine? Verschiebe mal nachträglich z.B. nur A19 um eine Zelle nach unten und vergleiche danach mal die Ergebnisse nachfolgenden drei Formellösungen.
Um Leerzellen zwischen den Daten nicht in die Auswertung einfließen zu lasen und die Formel auch auf "Vorrat" weit genug nach unten kopieren zu können, würde ich bei einer hilfsspaltenfreien Lösung auch die Formel in E2 nutzen, auch wenn diese etwas mehr zu tun hat und damit etwas länger geworden ist.
 ABCDE
1DatenLoki (1) neopa (1)neopa (2)
2Früh2× Früh 2x Früh2x Früh
3Früh2× Spät 2x Spät2x Spät
4Spät1× Frei 1x Frei1x Frei
5Spät2× Nacht 2x Nacht2x Nacht
6Frei4× Frei 4x Frei4x Frei
7Nacht2× Früh 2x Früh2x Früh
8Nacht2× Frei 2x Frei2x Frei
9Frei2× Spät 2x Spät2x Spät
10Frei1× FrühSonntag 1x FrühSonntag1x FrühSonntag
11Frei#ZAHL! #ZAHL! 
12Frei    
13Früh    
14Früh    
15Frei    
16Frei    
17Spät    
18Spät    
19FrühSonntag    
20     

Formeln der Tabelle
ZelleFormel
B2{=AGGREGAT(15;4;WENN(A$2:A$19=A$3:A$20;"";ZEILE(A$2:A$19)); ZEILE(A1))-AGGREGAT(15;4;WENN(A$2:A$19=A$1:A$18;"";ZEILE(A$2:A$19)); ZEILE(A1))+1&"× "&INDEX(A$1:A$19;AGGREGAT(15;4;WENN(A$2:A$19=A$1:A$18;"";ZEILE(A$2:A$19)); ZEILE(A1)))}
D2=AGGREGAT(15;6;ZEILE(A$2:A$99)/(A$3:A$99<>A$2:A$99); ZEILE(A1))-AGGREGAT(15;6;ZEILE(A$2:A$99)/(A$2:A$99<>A$1:A$99); ZEILE(A1))+1&"x "&INDEX(A:A;AGGREGAT(15;6;ZEILE(A$2:A$99)/(A$2:A$99<>A$1:A$99); ZEILE(A1)))
E2=WENNFEHLER(AGGREGAT(15;6;ZEILE(A$2:A$99)/(A$3:A$99<>A$2:A$99)/(A$2:A$99<>""); ZEILE(A1))-AGGREGAT(15;6;ZEILE(A$2:A$99)/(A$2:A$99<>A$1:A$99)/(A$2:A$99<>""); ZEILE(A1))+1&"x "&INDEX(A:A;AGGREGAT(15;6;ZEILE(A$2:A$99)/(A$2:A$99<>A$1:A$99)/(A$2:A$99<>""); ZEILE(A1))); "")
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...
Anzeige
vorallem ist dies ein schönes Beispiel dafür...
17.08.2016 10:43:33
Daniel
... dass Hilfsspalten sehr sinnvoll und hilfreich bei der Lösung von Aufgaben sind.
Gruß Daniel
AW: vorallem ist dies ein schönes Beispiel dafür...
17.08.2016 11:08:20
Luschi
Hallo Excel-Fan's,
so gut, wie ich Luc's Vba-Lösungen finde und immer wieder einsetze, aber für den
Excel-Nutzer, der brauchbare und wiederverwendbare Lösungen sucht, sind das Wolkenkuckucksheim-Varianten.
Mir gelingt es nicht, solche Vorschläge in Excel-Lehrgängen mit Spezial-Kenntnissen den Teilnehmern schmackhaft zu machen.
Für mich sind das immer wieder Inspiration, das Luc's Variantern in Vba-Lösungen einzubauen, aber für die Excel-Lehrgänge nutze ich lieber die Lösungsvorschläge von neopa (Werner).
Gruß von Luschi
aus klein-Paris
PS: Aber auch neopa's Lösungsvorschläge bringen die Lehrgangsteilonehmer schon oft an die Erkenntnis-Grenze!
Gerade diese hier aufgezeigten Formeln mit 3 x Aggregat() werde ich wieder viel zu erklären haben.
Anzeige
AW: könnte doch (m)ein Anliegen sein ...
17.08.2016 19:15:08
...
Hallo Luschi,
... in die Nähe dessen zu kommen, was Du mit "Erkenntnis-Grenze" bezeichnet hast ;-)
Zu meiner Formel, auch wen darin dreimal AGGREGAT() vorkommt, sind die drei Teilformeln alle nach dem gleichen Strickmuster aufgebaut. Zerleg die Formel doch mal nach dem gleichen Schema, wie es Luc mit seiner (sing.)-MatrixFormel getan hat und Du wirst feststellen, dass dies alles recht einfach ist. Es ist halt für viele noch etwas ungewohnt so zu denken.
Gruß Werner
.. , - ...
Zu 3x AGGREGAT siehe neopas AW, ...
17.08.2016 21:51:22
Luc:-?
…Luschi,
ansonsten mal folgende Charakterisierung:
1. Was ist der Unterschied zwischen „klassischen“ Fmln, die nur Xl-Standard-Fktt und solchen, die auch noch UDFs enthalten?
Die Standard-Fktt sind idR mehr oder weniger gut dokumentiert und stehen normalerweise ab der Xl-Version ihrer Einführung allen Nutzern zV! Meine UDFs haben idR nur einen vorangestellten stichpktartigen Kommentar, die von anderen Autoren enthalten bestenfalls pgmbegleitende Kommentare. Sie stehen dem zV, der sie in der EinsatzDatei, der Personal.xlsm/b oder einem AddIn bereitstellt.
Einschränkung: Neuerdings stehen auch MS-Fktt nicht mehr allen Nutzern der jeweiligen Xl-Version zV.
2. Muss ein FktsNutzer unbedingt das Pgm der Fkt kennen?
Sicher nein! Er muss aber wenigstens das AnwendungsHptZiel kennen! Das ist bei StandardFktt der Doku entnehmbar, bei UDFs ggf einer qualifizierten Beschreibung. Eine komplette Hilfe ist auch für UDFs machbar, bedeutet aber viel zusätzliche Arbeit. Leider kann diese dann auch nicht mehr in gleicher Form wie die Xl-Hilfe erstellt wdn, weil MS diese geändert hat.
Nur, weil bei UDFs aus Foren das Pgm einsehbar ist, heißt das nicht, dass sich ein NormalNutzer auch damit beschäftigen muss! Bei meinen UDFs könnte das Lesen des Kommentars oder, falls vorhanden, der Anwendungs­Beschreibung reichen. Alles Weitere kann man ggf auch durch Ausprobieren herausfinden, ganz so, wie es auch die Fml-Cracks mit MS-Fktt getan haben und noch tun. AGGREGAT wäre hier nur ein Bsp.
3. Für welchen Nutzerkreis sind meine UDFs bestimmt?
In 1.Linie für (fortgeschrittene) Xl-Nutzer per Fml, die auch VBA nutzen dürfen und die sich daraus ergebenden Konsequenzen beachten. Aber auch ihr Einsatz in SubRoutinen ist idR möglich, wobei in einigen wenigen Fällen eine etwas andere Argumentierung erforderlich bzw zweckmäßig sein kann (→vgl zB BgColor für Variante ZellFarben aus BedingtFormat).
Für FmlAnwender sind also höchstens die UDF-Einsatzmöglichkeiten interessant (vgl dazu aber unten); erst für Leute, die selber pgmmieren oder pgmmieren wollen, ggf gewisse Problem­Lösungen und pgmtechnische Vorgehensweisen. Bei MS-Fktt gibt's diese Chance nicht! Außerdem könnten diese auch noch auf eine Weise mit der Xl-Steuerung interagieren, die einer UDF großenteils versagt ist.
Deshalb ist es durchaus nahe­liegend, dass ein durchschnitt­liches Publikum in beiden Lehr­Varianten hiervon über­fordert ist (diese Erfahrung hatte ich einst schon mit wesentlich Bescheiderem machen müssen). Man muss dabei auch beachten, mit welchen Absichten, Voraus­setzungen und Motiva­tionen die Teil­nehmer den Kurs besuchen. Immer wieder wird es Teil­nehmer aus Firmen bzw Kreisen geben, in denen kaum mehr als einige wenige MS-Fktt regelmäßig in Fmln eingesetzt wdn. Das war vor 13 Jahren nicht anders und dürfte sich inzwischen auch nur unwesentlich verbessert haben. Wir sehen hier im Forum ja nur die mehr oder weniger „leuchtende Spitze des Eisbergs“, während du in deinen Kursen auch mit den „dunklen Abgründen“ darunter kon­frontiert wirst… ;-]
Wolkenkuckucksheim ist also viel größer als mancher glauben mag und beschränkt sich durchaus nicht nur auf UDFs.
Ansonsten wäre es ja nicht schwer zu sagen, was die UDFs tun:
VJoin verbindet ähnlich wie die neue XlFkt TEXTVERKETTEN alle Inhalte eines ZellBereichs oder eines ein Datenfeld liefernden 1.Arguments miteinander, wobei es verschiedene Varianten gibt (hier unter Weglassen der LeerTexte).
VSplit trennt Texte an definierter Stelle (hier die Ergebnisse des Vorstehenden) und kann b.Bed u.a. numerische Texte in echte Zahlen umwandeln.
NoErrRange erzeugt einen unzusammen­hängenden Bereich durch Weglassen von Zellen mit F-Werten und je nach Bedarf ausgeblendeten oder Zellen, die eine angebbare Bedingung erfüllen; Xl kann solche Bereiche idR nicht direkt abbilden, weshalb eine weitere Fkt erforderlich ist, die daraus ein abbildbares Datenfeld macht.
DataSet führt verschiedene Arten von DatenMengen-Operationen durch, wobei auch ein einziger Vektor erzeugt wdn kann.
Ansonsten freut's mich durchaus, dass du meine UDFs wenigstens für eigenen Einsatz gebrauchen kannst. ;-)
Gruß, Luc :-?
Anzeige
wenn UDFs in solchen "Wettbewerben"...
17.08.2016 22:47:09
Daniel
... zulässig sind, dann sollte jedem klar sein, dass die kürzeste UDF, die das Problem löst, hier so lautet:
=X(A:A;Zeile(A1))
für X darf man auch jeden anderen persönlich präferierten Funktionsnamen einsetzen.
wenn man schon einen Wettkampf um die beste Formel veranstaltet, dann braucht man auch eine gemeinsame Basis.
Bei der Tour de France treten ja auch nur Fahrräder ohne Hilfsmotor an und keine E-Bikes.
Ich gehe mal davon aus, dass Luc bei UDFs anderer Wettbewerbersteilnehmer gleich wieder viele Gründe einfallen werden, warum nur seine UDFs zulässig sind und die anderen nicht (vermutlich wird er dann wieder sein beliebtes Totschlagarugment der "fehlenden Universalität" anwenden) und sich so den Wettbewerbsvorteil verschaffen, weil er seine UDFs ja bestens kennt und die anderen Wettbewerber nicht.
Wenn Wettbewerb, dann auch mit gleichen Voraussetzungen für alle, dh mit Funktionen die allen zur verfügung stehen und gleichermassen bekannt sind.
auch dem Fragesteller helfen die Lucschen UDFs nicht viel.
dass man sich ein offizielles AddIn von Microsoft noch installiert, ist ja ok, aber einen nicht dokumentierten Makrocode aus unsicherer Quelle, den man nicht vollständig versteht, dessen Ersteller nicht bekannt ist und sich in der anonymität versteckt zu verwenden, wäre absolut unprofessionell.
Gruß Daniel
Anzeige
Da hat sich ja nun ein absolut transparenter ...
18.08.2016 13:15:11
Luc:-?
…und nicht anonym bzw richtiger pseudonym „versteckter“ Kommentator, der hier gar nicht angesprochen war, zu Wort gemeldet… :->
1. Es handelte sich primär um keinen Wettbewerb, sondern um die Vorstellung von Alternativen, speziell einen etwas anderen Einsatz von AGGREGAT, verbunden mit daraus ableitbaren Schlussfolgerungen wie ein aufmerksamer Leser sicher mitbekommen kann. Gleichzeitig habe ich dieses Thema als ein weiteres Bsp für Einsatz­möglich­keiten von 4 meiner universell angelegten UDFs benutzt.
2. Ich akzeptiere auch UDFs anderer Autoren, wenn zu erkennen ist, dass sie bestimmte GrundRegeln einhalten, die sie (älteren) Xl-StandardFktt vglbar machen und so mehr als nur die Lösung des momentanen Problems bieten. Das ist vor allem bei UDFs für ZellFml-Einsatz eine Frage der Rationalität. Für spezielle Zwecke, bevorzugt im pgmmierer-üblichen Einsatz als Hilfsmittel für Sub­Routinen, kann das auch anders aussehen. Ansonsten kann man bei Bedarf auch einen FktsGenerator einsetzen, um eine spezielle UDF zu erzeugen (in jahrealten Teilen des Archivs findet man, so Google will, auch ein Bsp dafür).
3. Aus dem vorstehenden BT spricht die blanke Missgunst, weshalb ich nur noch folgende Bemerkung anfügen will: Jeder, dem meine UDFs nicht gefallen, darf gerne selber welche schreiben, nur sollten sie, wenn sie gleichen Ansprüchen genügen wollen, auch die dementsprechende Form haben. Das dürfte bei mal eben schnell hingeschriebenen FktsProzeduren iaR kaum der Fall sein. Mich haben die inzwischen 100e UDFs jedenfalls 1000e Stunden Arbeit gekostet. Ein Nebeneffekt: Man lernt dabei (etwas) mehr über Xl als mit noch so vielen speziellen FmlLösungen…
Luc :-?
Anzeige
AW: Da hat sich ja nun ein absolut transparenter ...
18.08.2016 13:29:44
Daniel
welche Grundregeln wären das denn, die du erwartest?
was verstehts du unter "universell"?
in bezug auf die Programmierung gibt es eigentlich keine "Universalität", sonderen immer nur Anforderungen die erfüllt und Rahmenbedingungen die beachtet werden müssen.
was wären denn deine Anforderungen, die erfüllt werden müssten?
Gruß Daniel
Das habe ich schon des Öfteren angemerkt ...
19.08.2016 00:29:35
Luc:-?
…und das weißt du auch, denn wir hatten schon in dieser Richtung diskutiert, also tue nicht so scheinheilig! :-|
Ansonsten muss man sich nur mal die Xl-Standard-Fktt ansehen und die Mehrheit der ganz alten mit etlichen jüngeren und dann noch ganz neuen vergleichen. Da sollten schon Unterschiede auffallen! Erstere und zT auch Letztere sind idR universeller als die aus dem zeitlichen Mittelfeld. Wenn du das nicht einordnen kannst, ist das dein Problem!
Wenn MS in dieser Frage so vorgegangen wäre bzw vorgehen würde wie du es für Pgmmierung generell unterstellst, sähe Xl heute ganz anders aus. Aber alle mir bekannten Calc-Pgmm sind seit Lotus 1-2-3 diesbezgl ähnlich ausgestattet. Ich schreibe also UDFs, die dieses Angebot in ähnlicher Weise ergänzen sollen, keine Hilfsmittel für Pgmmierer (das können die ja auch selber).
Es gibt auch große Systeme, die (fast) nur über die Angabe von Metadaten ausgewertet (und gesteuert) wdn. Das wäre ohne universellen Aufbau und ebensolche Hilfsmittel auch nicht möglich (vgl METIS).
Luc :-?
Anzeige
AW: Das habe ich schon des Öfteren angemerkt ...
19.08.2016 00:34:52
Daniel
was unterstelle ich den generell der Programmierung?
es wäre mir neu, das ich der "Programmierung" etwas unterstellen würde.
kannst du da mal bitte konkreter werden, was du damit meinst?
Gruß Daniel
Was du dazu geschrieben hast! Schon vergessen? owT
19.08.2016 01:24:30
Luc:-?
:-?
AW: Was du dazu geschrieben hast! Schon vergessen? owT
19.08.2016 08:58:43
Daniel
ich möchte wissen, das DU gelesen und verstanden hast.
Gruß Daniel
Wat nu, DASS oder WAS...? owT
20.08.2016 01:15:32
Luc:-?
:-?
Beides.
20.08.2016 08:59:49
Daniel
Ich muss ja sicherstellen, dass du das, was du gelesen hast, auch richtig verstehst.
universell
19.08.2016 20:40:48
KlausF
Moin,
universell = vom lateinischen universalis: „zur Gesamtheit gehörig“
Wie also kann eine VBA-UDF zu einer Gesamtheit zugehörig genannt werden?
Universell für mich bedeutet:
- Weitestgehend abwärts kompatibel
- Plattformübergreifend
- Nachvollziehbar und eigenständig einzusetzen
Eine gute und vollständige Dokumentation ist für mich dabei wünschenswerte Voraussetzung
(jedenfalls dann, wenn es sich um eine komplexe, im Kern nicht leicht nachvollziehbare UDF handelt).
In diesem Kontext sind Luc's UDFs auf meinem Rechner leider nicht wirksam, was ich als sehr schade empfinde.
Das ist nicht polemisch gemeint(!) sondern nur als Hinweis eines Users zu verstehen.
Über den reinen Inhalt kann ich somit nicht einmal eine Aussage tätigen.
Gruß
Klaus
Anzeige
Kann sie schon, ...
20.08.2016 20:22:36
Luc:-?
…Klaus,
nämlich genau wie die Standard-Fktt zur Gesamtheit der auf dieser Plattform einsetzbaren Fktt. Aber das war damit nicht gemeint, sondern die Lösung einer bestimmten Xl-Aufgabe unter Beachtung der Gesamtheit der (in Xl) dabei möglichen Umstände. Die meisten im Netz zu findenden UDFs lassen diesen Aspekt nämlich vermissen (auch einige neuere, aber nur sehr wenige alte Xl-Standard-Fktt).
Zu den Anstrichen:
1. Abwärts kompatibel sind neueste Xl-Standard-Fktt nicht, einfach, weil ältere Xl-Versionen sie nicht enthalten. Sie sind, mit weni­gen Ausnahmen, auch nicht universell im von mir gemeinten Sinne. Meine UDFs sind idR bis mindestens Xl9/2k abwärts­kompa­tibel, sofern es sich nicht um solche handelt, die neuere Xl-Features behandeln. Viele enthalten nur VBA-Schlüs­sel­Begriffe, die es auch schon in VB6 gab.
2. Plattformübergreifend kann nur sein, was auch auf allen Plattformen berücksichtigt wdn kann bzw vorhanden ist. Das trifft auch nicht auf alle Xl-Fktt und -Features zu.
3. Keine einzige Xl-Fkt wäre (pgmtechnisch) oW nachvollziehbar, da ihr Pgm unbekannt ist. Sie können also nur empirisch nach­voll­zogen wdn, wobei das durchaus über die Xl-Hilfe zur jewei­ligen Fkt hinaus­gehen kann, wie die Fml-Cracks beweisen. Wenn das Pgm einer UDF aber bekannt ist und trotzdem nicht nach­voll­zogen wdn kann, liegt es wohl am jewei­ligen Betrachter. Für den empi­ri­schen Nach­vollzug gilt im Prinzip das Gleiche wie für Xl-Standard-Fktt. Die von mir gezeigten Fmln mit UDFs beweisen, dass sie prinzi­piell nicht nur eigen­ständig, sondern auch im Verbund mit anderen Fktt in einer Fml einge­setzt wdn können. Dass eine UDF wie NoErrRange uU eigen­ständig keine Daten­Abbildung erzeugen kann, liegt an ihrem Ergebnis. Damit hätte auch INDEX Probleme.
Ansonsten ist wünschenswert drin, kostet aber viel Zeit und damit dann auch Geld. So etwas gibt's nicht umsonst, das sollte jedem klar sein.
Ich frage mich natürlich, warum meine UDFs bei dir nicht laufen, bei anderen aber schon…
Gruß, Luc :-?
Anzeige
Plattformübergreifend sind die Xl-Fktt alle ...
20.08.2016 23:16:02
Luc:-?
…nicht per sé, Klaus,
die Xl-Pgmmierer hatten ursprünglich Lotus-Fktt nachpgmmiert und eine Konvertierung eingerichtet, auch für andere, damals bereits existente Calc-Pgmm. LO/OOcalc-Pgmmierer mussten dann dasselbe für Xl-Fktt machen. Eine VBA-basierte UDF kann also auch nur in einer VBA-Umgebung fktionieren. Schon beim Mac gibt's dabei Probleme und ein LO/OO-VBA-Adapter versteht auch nur „Ideal“-VBA, nicht alles, was ein MS-VBA-Compiler noch toleriert.
Luc :-?
AW: Kann sie schon, ...
21.08.2016 18:31:02
KlausF
Moin Luc.
[ Abwärts kompatibel sind neueste Xl-Standard-Fktt nicht ]
Das ist schon klar. Aber vieles lässt sich mit Umsicht oder im Workaround ersetzen.
Da ich im täglichen Leben mit vielen Excelversionen zu tun habe, bin ich darauf natürlich
besonders geeicht.
[ Plattformübergreifend kann nur sein, was auch auf allen Plattformen berücksichtigt wdn kann
bzw vorhanden ist. Das trifft auch nicht auf alle Xl-Fktt und -Features zu. ]

Na ja, auf meinem Mac laufen alle Funktionen genau so wie unter Windows.
Mit plattformübergreifend meinte ich z.B. den Einsatz von Application.PathSeparator statt „/„
Oder zusätzliche FileFormat Numbers beim Speichern. Eben alles, was auf beiden Plattformen läuft.
Das setzt natürlich bestimmte Kenntnisse voraus.
Ich muss seit Anfang der 90er mit plattformübergreifenden Dokumenten arbeiten (Grafik + Office).
Da wird man sensibel für derartige Probleme. Die Kunst dabei ist, auf den kleinsten gemeinsamen
Nenner „herunter zu brechen“.

[ Wenn das Pgm einer UDF aber bekannt ist und trotzdem nicht nach­voll­zogen wdn kann,
liegt es wohl am jewei­ligen Betrachter ]

Dazu möchte ich an Luschi’s Antwort erinnern. Die Frage könnte lauten: Wie schaffe ich es, eine
komplexe UDF einem Normal-User für den eigenständigen Gebrauch verständlich zu machen?
(Sonst befriedigt sie doch nur den VBA-Crack, der sich ohnehin zu helfen weis oder jemanden,
der dringend eine Lösung benötigt, ohne sie wirklich zu verstehen).
Das soll aber nichts über die Qualität Deiner UDFs aussagen.
[ Ich frage mich natürlich, warum meine UDFs bei dir nicht laufen, bei anderen aber schon… ]
Keine Ahnung. Mac, Excel X, Excel 2003, Excel 2011. Normalerweise bekomme ich fast alles zum Laufen.
Die UDFs sind mir aber ehrlich gesagt zu komplex um daran „herum zu doktern“.
Gruß
Klaus
Anzeige
Das ist ja auch OK und ein für Entwicklungen ...
22.08.2016 01:44:12
Luc:-?
…empfohlenes Verhalten, Klaus;
man sollte stets auf dem untersten Level der vorgesehenen Hard- bzw Software-Plattformen entwickeln bzw das EntwicklungsLevel angeben, zumindest bei offiziellen Angeboten. Nur handelt es sich bei kostenfreien Angeboten in einem Forum stets um inoffizielle auf eigenes Risiko des Nutzers. Auch die Archivierung und häufige Empfehlung (Verlinkung) derselben ändert daran nichts.
Ansonsten dürfte es bei der Mehrzahl meiner UDFs (vor allem den hier veröffentlichten) nicht zu den von dir genannten Problemen kommen. Die dürften auf einer Ebene liegen, die nur zT vom Entwickler kontrolliert wdn kann, nämlich, wie sieht die VBA-Imple­men­ta­tion auf der jeweiligen Plattform aus? Das unterscheidet sich ja auch bei neuesten Xl-Versionen. Davor hat zB Nepumuk auch schon des Öfteren gewarnt. Wollte man das sicherer machen, müsste man wohl COM-Addins, uU auch auf Basis einer anderen Sprache, generieren. Dann wäre allerdings zumindest eine qualifizierte Hilfe inkl Bspp erforderlich, weil die Pgmm dann niemand mehr ohne Verletzung des Urheberrechts zu Gesicht bekommt, womit sich der Kreis schließen würde und nichts mehr kostenfrei wäre…
Wenn ein VBA-Compiler bzw -Adapter (wie der von LO/OO) nicht von MS stammt, kann hinzukommen, dass die VBA-Syntax sehr streng ausgelegt wird. Wurde das nicht eingehalten, weil bspw der VBE nichts beanstandet hat, hat man halt Pech gehabt (falls das nicht beabsichtigt war!). Das dürfte dann auch bei vielen meiner UDFs der Fall sein.
So habe ich bspw bei einer qualifizierteren Range2HTML-Variante JavaScript-Pgmm einbauen müssen, weil die meisten Browser VBScript nicht verstehen und außerdem die ForumsSoftware-Automatik auf die ProzedurKöpfe mit Zerhackung des die HTML-Tab enthaltenen Text­Streams reagiert.
Was meine UDFs betrifft, sind sie in 1.Linie für den normalen Xl-Nutzer gedacht, für VBA-Interessierte haben sie höchstens einen gewissen Lern­Effekt, der natürlich vom jeweiligen Kenntnis­Stand abhängt. Die Cracks beiderlei Ausrichtung interessiert das kaum. Der Ehrgeiz der Einen richtet sich auf die Lösung mit Xl-Standards, der der Anderen auf eigenes Pgmmier-Bemühen. Ich hatte u.a. auch deshalb in meinen 1.Jahren hier nur sehr wenige UDFs gezeigt. Ich habe nämlich keine Lust, für die immense Arbeit nicht nur keinen Dank zu erhalten, sondern mitunter sogar Anfeindungen hinnehmen zu müssen; etwas, was Leute, die keinerlei Ambitionen hegen, irgend­etwas für irgend­jemand umsonst zu tun, nur in ihren Ansichten bestätigen würde. Natürlich ist es auch befriedigend, ein Problem so zu verall­gemeinern, dass daraus eine vielseitig einsetzbare Lösung erwächst, was dann auch den Hilfsmittel-Park eines Nutzers überschaubar hält. Dass das Teilnehmer eines Lehrgangs höchstens am Rande interessiert, ist doch auch verständ­lich. Anders sähe es vielleicht aus, wenn dazu ein Lehrbuch mit Bspp erscheinen würde, auf dessen Basis dann Fort­geschrit­tenen-Lehrgänge für Interessenten organisiert würden. Aber damit will ich mich nun wirklich nicht mehr aus­ein­ander­setzen (10-20 Lebensjahre zu spät).
Das „Herumdoktern“ an meinen UDFs ist auch nicht vorgesehen. Die sind, ebenso wie Xl-Fktt, nunmal so wie sie sind. Anzeigen von Fehlern (bzw Ungereimtheiten) und ggf auch Verbes­serungs­Vorschläge nehme ich aber an. Ich würde es nämlich nicht gutheißen, wenn außer den offiziellen Versionen noch nicht als solche gekennzeichnete Unter­versionen gleichen Namens in Umlauf wären, die dann womöglich ganz anders reagieren. Wer das unbedingt machen will/muss, sollte an die Nr der Ausgangs­Version wenigstens noch eine weitere .#-Stelle anhängen und die Modifikation (mit Autor) vermerken. Aber lieber wäre mir, er ließe sich nur inspirieren und würde eine eigene UDF mit neuem Namen schreiben. Die Ausgangsbasis kann/sollte ggf angegeben wdn. Aber dabei immer daran denken, dass man das mit Standard-Fktt auch nicht machen kann. Ein Projekt zur Nach­Pgmmierung von Xl-Fktt in VBA ist ja schon im Ansatz (Ol-Xl, vor 10 Jahren endgültig) gescheitert.
Morrn, Luc :-?
AW: Das ist ja auch OK und ein für Entwicklungen ...
22.08.2016 14:34:09
KlausF
Moin Luc.
[ Natürlich ist es auch befriedigend, ein Problem so zu verallgemeinern, dass daraus eine vielseitig einsetzbare
Lösung erwächst, was dann auch den Hilfsmittel-Park eines Nutzers überschaubar hält. ]

Klar, das kann ich unterschreiben. Aber ich kann mir nur schwer vorstellen, dass die Mehrheit der normalen
XL-User ohne Deine Unterstützung bei der Erschließung einer Formellösung - also nur Anhand eines
Verweises auf Deine UDF - sich eine eigene Lösung erarbeiten kann. Du kannst ja mal die Probe aufs Exempel
machen.
[ Dass das Teilnehmer eines Lehrgangs höchstens am Rande interessiert, ist doch auch verständ­lich ]
Da habe ich Luschi anders verstanden. Zitat: „Mir gelingt es nicht, solche Vorschläge in Excel-Lehrgängen mit
Spezial-Kenntnissen den Teilnehmern schmackhaft zu machen … für den Excel-Nutzer, der brauchbare und
wiederverwendbare Lösungen sucht, sind das Wolkenkuckucksheim-Varianten“

Wenn ich an einem Excel-Lehrgang mit Spezial-Kenntnissen teilnehme, interessieren mich doch gerade die
nicht alltäglichen Lösungen. Die UDFs scheinen aber einfach zu komplex, um eigenständig reproduzierbare
Ergebnisse zu liefern. Es fehlt also das Erfolgserlebnis. Und das schafft Lustlosigkeit (habe selbst jahrelang in
der Erwachsenenbildung gearbeitet und kenne das Problem. Zwei lassen sich begeistern, der Rest schweigt
und wird unruhig).
[ Ich habe nämlich keine Lust, für die immense Arbeit nicht nur keinen Dank zu erhalten, sondern mitunter
sogar Anfeindungen hinnehmen zu müssen ]

Das kann ich gut verstehen. Mein Eindruck ist allerdings, dass die Anfeindungen nicht Deiner immensen
Arbeit geschuldet waren sondern andere Ursachen hatten. Das ist aber Schnee von gestern und soll hier
nicht mehr erörtert werden.
[ Das „Herumdoktern“ an meinen UDFs ist auch nicht vorgesehen ]
Wenn ich das mache, dann nur für den Privatgebrauch, um eine UDF nachvollziehen zu können. Wenn ich
z.B. Excel 2003 offen habe und Split verwendet wird (auf dem Mac erst ab 2007 lauffähig), dann schnitze ich
eben einen Workaround. Ich würde Deine UDFs aber sowieso nie offiziell verwenden. Wenn nämlich ein
Fehler auftritt hätte ich nie die Gewissheit ob es sich um einen Anwender- oder Programmierfehler handelt.
Für mich dann lieber eine Lösung mit Hilfsspalten und Standard-Funktionen, die auch in 10 Jahren noch
funktioniert (und die ich auch in 10 Jahren noch verstehe ,–)
In diesem Sinne …
Gruß
Klaus
...Ja, wenn das ordentlich und strukturiert ...
17.08.2016 16:33:10
Luc:-?
…gehandhabt wird, Daniel;
wette, du hattest noch nie mit chaotischen VorgängerArbeiten* zu tun → relativ ordentliche Tabellen, aber Hilfszellen mit Nebenrechnungen über das ganze Blatt verteilt. So sah es bei mir höchstens auf dem CorelDraw-Desk aus, nicht auf dem Blatt. Dazu dann noch je nach aktueller Lage ausgeblendete Zeilen und Spalten, Schwarzen Löchern, den Müllsammlern des Universums, vglbar.
Tja, und dann kamen noch nachträglich-aktuelle Additionen in Zellen alter Tabellen hinzu. In heutigen Xl-Versionen würde es von grünen Dreiecken nur so wimmeln!
Genau deshalb mag ich das nicht und verwende lieber MatrixFmln, VerbundZellen u/o benannte (Teil-)Fmln…
* Rechtfertigung dafür war enormer Zeitdruck und hohe ÜberstundenBelastung, halt (Un-)Gesundheitswesen… ;-/
Gruß, Luc :-?
AW: man darf dann auch mal aufräumen..
17.08.2016 16:54:00
Daniel
.. und den menschen klar machen, dass ein vernünftiger Dateiaufbau viel Mensch- und Maschinenzeit einsparen kann und dass dann viele Aufgaben mit Excelstandardformeln aus dem Anfänger- und Fortegschrittenenbereich gelöst werden können und keine Experten erfordern.
Gruß Daniel
Das erzähl dann mal denen, die das so ...
17.08.2016 20:42:41
Luc:-?
…„organisiert“ hatten und dann deine Chefs sind, Daniel,
und du außerdem vor lauter Tagesarbeit gar keine Zeit dafür hast, aber trotzdem ein ganzes Projekt mit vielen Dtzd Dateien umstellen und zT neu entwickeln sollst…
Luc :-?
AW: wo ist Dein Beispiel? owT
17.08.2016 19:14:23
...
Gruß Werner
.. , - ...
Er meint sicher WFs Lösung! owT
17.08.2016 20:43:32
Luc:-?
:-?
AW: dazu wäre noch anzumerken ...
18.08.2016 09:39:22
...
Hallo Luc,
... das ich die Lösung von WF schon gelesen hatte, bevor Du Deinen Beitrag dort eingestellt hattest. Da hatte ich schon die Idee die Lösung mit AGGREGAT() umzusetzen, hatte es aber dann gelassen, da ich es zunächst auch als ausreichende Lösung angesehen hatte. Mit der Analyse Deines Beitrages hatte ich die Problematik mit dem Verschieben von Daten festgestellt. Daraufhin habe ich mir die Hilfsspaltenlösung angeschaut. Die reagiert darauf auch nicht ganz korrekt.
Deshalb hab ich meine Idee umgesetzt und stieß dabei mit meiner 1. Formel auf ähnliche Problematik (allerdings hier nur das Zählen von "Nichts") festgestellt. Aber die Lösung dessen mit meiner 2. Formel hat mich dann keine 5 Minuten gekostet.
Insgesamt habe ich für meine Lösung (ohne die Analyse Deiner und WFs Lösung und ohne mein Geschriebse) max. 15 Minuten. Ich weiß nicht, ob ich innerhalb von 15 Minuten eine akzeptable Hilfsformellösung gebastelt hätte. Wie geschrieben hatte und hätte ich dazu aber auch keine Ambitionen.
Gruß Werner
.. , - ...
Warum denn nicht, ...
17.08.2016 15:16:15
Luc:-?
…Werner?
Ich hatte absichtlich regulär einsetzen geschrieben (hatte dabei auch an WF gedacht), denn deine Lösung ist, so clever sie auch ist, irregulär. Ich hatte natürlich noch ein paar Hintergedanken als ich einen Betreff wählte, auf den du quasi anspringen musstest. ;-]
(Ich beziehe mich aus Vglbarkeitsgründen im Folgenden auf deine Fmln in D!)
1. habe ich eine Form gewählt, die für die meisten Nutzer nachvollziehbar sein dürfte, denn WENN kennen bestimmt alle (vgl meine AW an Luschi);
2. wollte ich demonstrieren, das AGGREGAT nicht nur LeerZellen, sondern auch mit LeerText gefüllte mit Argument2 filtern kann (das mit den rausgefilterten Fehlern kennen wir ja nun schon);
3. kann man so die künstliche Erzeugung von Fehlern vermeiden (etwas, was VBA-Pgmmierern selbst­verständlich ist bzw sein sollte);
4. kann man auch benannte TeilFmln definieren*, so dass der (von dir angenommene) „MatrixFml-Horror“ ebenfalls gänzlich ver­mie­den wdn kann und die Fml zudem redundanzfrei wird;
5. wird hier und mit der Fml nach 4. erneut bewiesen, dass die sog Matrix(Fml)Fktio­nalität nur zT der jeweiligen Fkt geschuldet ist, also eine Chimäre ist → in deiner FmlForm wird AGGREGAT eine komplette Matrix (inkl F-Werten) geliefert, in meiner muss Xl erst veranlasst wdn, alle Werte der Matrix zu liefern (AGGREGAT kann das hier offen­sichtlich nicht, was auch folge­richtig ist), berechnet wdn sie ohnehin (vgl Variante mit benannter Fml);
6. kann in meiner FmlVersion AGGREGAT(15;4;…) ganz in WFs Sinn durch KKLEINSTE(…) ersetzt wdn (was dann auch in älteren Xl-Ver­sionen einsetzbar wäre), in deiner natur­gemäß nicht, wodurch das wiederum einen „gekünstelten“ Eindruck macht.
Das von dir angesprochene VerschiebeProblem halte ich für zweitrangig. Mit einer pluralen MatrixFml wäre das ebenfalls leicht kor­rigierbar. Außerdem muss jeder bei Änderungen am Ausgangs­daten­Material mit Korrekturen rechnen. Ich hätte ja, ebenso wie du, auch einen größeren Bereich wählen können. Aber das ist eben der Matrix­Bereich, der wg des Versatzes um eine Zeile zwischen den beiden VglsKomponenten immer auf beiden End- bzw Anfangs­werten verschoben wdn muss. Wer die Fml versteht, begreift das auch.
Ich habe übrigens absichtlich nicht WENNFEHLER verwendet. Es sollte sichtbar wdn, dass die singulare MatrixFml in einer irrele­vanten Zeile einen normalen F-Wert liefert, die plurale MatrixFml° aber #NV, weil die Werte der abgebildeten Ergebnis­Matrix erschöpft sind. Ein derartiger Fehler ist idR nicht (mit WENNFEHLER) korri­gierbar, sondern bedarf anderer Ver­hinde­rungs­Maß­nahmen.
Im Übrigen ist deine Fml natürlich elegant und entspricht in der Inanspruch­nahme von Fktt iW meiner UDF-Lösung (wenn man die Container-Fkt nicht doppelt zählen will).
* Alternative Fml in B2[:B10]: =AGGREGAT(15;4;EndIndex;ZEILE(A1))-AGGREGAT(15;4;AnfIndex;ZEILE(A1))+1&"× "&INDEX(A$1:A$19;
AGGREGAT(15;4;AnfIndex;ZEILE(A1))) → benannte Fmln lt gleichbenannter Spalten C:D
° Zu den Fmln im UDF-Block mehr in meiner AW an Luschi.

Gruß, Luc :-?
AW: weil es wenig "AGGREGAT() -gerecht" ist ...
17.08.2016 19:15:43
...
Hallo Luc,
... dann kannst Du nämlich gleich mit KKLEINSTE() in einer echten MATRIXformel auswerten und musst nicht AGGREGAT() einsetzen. Für mich ist das ungefähr so, als ob man für eine Lösung {=SUMMENPRODUKT(...)} anstelle {=SUMME(...)} einsetzt.
Deine Formel ist übrigens für den Normalnutzer - der die Funktion WENN() handhaben kann - genauso wenig verständlich wie meine.
Meine Formel berücksichtigt zusätzlich zu Deiner noch ein paar Eventualitäten der vorhandenen oder nachträglichen geänderten Daten mehr. Aus meiner Sicht ist das schon auch wichtig.
Doch erkläre mir, was ist an meiner Formel irregulär? Ist sie illegal? oder rechtswidrig? oder gar sträflich? Das alles meinst Du doch wo nicht. "Eigenmächtig", das könnte es schon etwas eher treffen. Aber genauso wie z.B. Du zu Deinen UDF-Lösungsangeboten stehst, stehe ich zu Matrixfunktion(alität)sformeln insbesondere den auf Basis INDEX(), AGGREGAT(), MMULT() und VERWEIS(9;1/(...)
Einige dieser mögen in sich gesehen auf den ersten Blick teilweise widersinnig wirken, aber für mich sind sie klarer als vieles andere.
Ich wollte und will nicht den Eindruck erwecken, dass ich VBA und oder UDF- und erst Recht nicht Hilfsspaltenlösungen missachte. Nein, das nicht. Ich hab aber auch schon ähnlichen Excelchaos gesehen, wie Du es im anderen Beitrag dargelegt hast. Meine Erfahrung ist, dass ein Großteil der Hilfesucher nur eine Lösung suchen. Wie diese zustande kommt, ist denen meist völlig egal. Wenn eine angeboten wird, wird diese dann oft bedenkenlos eingesetzt.
Nur ein Teil der Hilfesuchenden will die Zusammenhänge verstehen. Dieser Teil ist natürlich zunächst froh über z.B. Hilfsspaltenlösungen, die sie einfach nachvollziehen können. Doch ich behaupte mal, dass gute Hilfsspaltenlösungen auch nur diejenigen konstruieren können, wenn diese schon mindestens Fortgeschrittenen Niveau haben und diese wiederum suchen dann oft auch nach weiteren Alternativen.
Wir leisten hier in Foren zu einem großen Teil eine Tätigkeit, für die nicht nur mE der Programmentwickler zuständig wäre. Ich mache dies trotzdem, wie viele andere hier auch, meist hobbyartig. Das heißt aber nicht, dass ich in erster Linie für Andere da bin. Ein Hobby sollte nämlich auch eine innere Befriedigung und oder Spaß/Freude bereiten. Hilfsspaltenlösungen tun mir in den seltensten Fällen diesen Gefallen, warum sollte ich mich also mit diesen ohne Not beschäftigen?
Wenn das Andere das anders sehen, dann ist das halt so. Für Argumenten bin ich durchaus offen aber erst wenn sie mich überzeugen und sie in meine Vorstellungen meines Hobbys passen, dann bin ich sicherlich der nicht der letzte, der sich dem anschließt.
Gruß Werner
.. , - ...
Was ist denn AGGREGAT-gerecht und vor ...
18.08.2016 18:53:19
Luc:-?
…allem, Werner,
wer legt das fest? Das hatten wir ansatzweise doch schon mal bei INDEX! ;-)
Mit irregulär meinte ich vor allem die Xl-Hilfe, aus der man eine solche Lösung nicht unbedingt herauslesen kann, und in 2.Linie die absichtliche Erzeugung von Fehlerwerten, die dann mit Arg2=6 ignoriert wdn. Diese Möglichkeit scheinst du ja geradezu als exis­tenziell für AGGREGAT anzusehen. Sie ist aber nur eines von mehreren zusätzlichen Features!
Was bei einer derart häufig benutzten Fkt wie WENN herauskommt, sollte/könnte nun aber jeder Anwender wissen, auch wenn sie in einer (pluralen) MatrixFml benutzt wird. Allerdings gestehe ich zu, dass das beim ungeübten Nutzer auch einen etwas irregulären Eindruck hinterlassen könnte, obwohl eine solche Vorgehensweise eigentlich die naheliegendste sein sollte.
Wohin soll die Berücksichtigung von ÄnderungsEventualitäten denn noch führen?! Wer eine solche Fml gebraucht, sollte sie auch verstehen und kann dann so etwas bei Bedarf in EigenRegie ergänzen. Ansonsten hängt der, der nur 'ne schnelle Lösung sucht, ohne sie verstehen zu wollen, ständig am ForumsTropf. Das kann im Berufsleben ganz schön riskant sein bzw wdn.
Der Vgl deiner Vorliebe für Fmln mit „Matrix(Fml)FktionalitätsFktt“ mit meiner für UDFs hat nur einen Haken — meine UDFs haben diese Fktionalität nur dann, wenn ich das auch einpgmmiere, und nur für die Argumente, bei denen ich das vorsehe. Genauso ist das mit XlFktt → die müssen so pgmmiert sein! Allerdings wdn sie noch zusätzlich von der Xl-Steuerung unterstützt, die eine Variation skalarer Argumente besorgt. Eine UDF hat diese Unterstützung nicht oder nur in ZellFmln unter entsprd günstigen Voraussetzungen.
Im Übrigen teile ich deine Meinung.
Gruß, Luc :-?

143 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige