Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1732to1736
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

Weg von a nach b

Weg von a nach b
15.01.2020 17:13:45
a
Sehr geehrte Kollegen, ich bin auf der Suche nach einer Lösung um alle möglichen Wege durch ein Gebäude von Ausgangspunkt zum Endpunkt darzustellen. Grundlage sind Daten aus einem Raumbuch die wie folgt dargestellt sind:
Jeder Raum hat eine eindeutige Nummer und wird mittels einer oder mehreren Türen mit anderen Räumen verbunden.
In Summe habe ich ca. 1.600 Räume und zugeordnet ca. 3000 Türen (auf verschiedenen Ebenen, das spielt jetzt aber denke ich keine Rolle.
Beispiel: hier sieht man dass zB. Der Raum mit der Nummer 005 mit den Räumen 004 und 006 verbunden ist.
Der Raum 001 mit 003 und 140 usw...
Raum A | Raum B
001|003
001|140
003|005
005|004
005|006
005|021
007|006
021|019
021|020
088|005
140|088
155|011
Um also zB. von Ausgangspunkt A (Raum 001) zum Endpunkt B (Raum 006) zu gelangen wäre die Lösung
001|003
003|005
005|006
oder
001|140
140|088
088|005
005|006
Hat von Euch jemand eine Idee wie man alle möglichen Wege von beliebigen Ausgangs - und Endpunkt berechnen und darstellen kann?
Vorab schon mal vielen lieben Dank für Euer Interesse und Eure Zeit!
Liebe Grüße, Thomas

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Weg von a nach b
15.01.2020 17:22:42
a
das ist im Prinzip ein Routenplaner.
frag mal bei TomTom nach, ob die dir ihre Quellcodes überlassen ;-)
Gruß Daniel
AW: Weg von a nach b
15.01.2020 18:40:14
a
Hallo zusammen :-)
Nicht nur im Prinzip ;-) Es ist ein Graph und dem entsprechend kann man in ihm z.B. kürzeste Wege suchen.
https://mathepedia.de/Graphentheorie.html
Viele Grüße,
Zwenn
AW: Weg von a nach b
16.01.2020 08:46:00
a
Ich habe eine Exceldatei mit VBA programmiert, die genau das macht.
Die darf ich aber nicht veröffentlichen.
Habe es so gelöst
Ich definiere Wege zwischen jedem Raum und vergebe Alphanummerische Namen für die Wege
Die Kreuzungspunkte erhalten Zahlen
Die Wege werden über "von" "nach" den Kreuzungspunkten zugeordnet
Im ersten Weg überprüftst Du, ob der Weg am Startpunkt losgeht, wenn ja, schreib die Zeile in eine Spalte
Nimm die Rang-Funktion in die Zeilennummern der gefundenen Wegen, die am Startpunkt beginnen, auswertest
Mit Summewenn setzt Du die Zeilennummer an die obersten Zeilen
Jetzt stehen alle Wege, die am Startpunkt beginnen, an definierter Stelle (1. Zeile, 2. Zeile, 3. Zeile)
Mit Indirekt() und der Zeile kannst Du jetzt rauslesen, wohin der Weg führt.
Mit Anzahl() bestimmst Du die Anzahl der Wege, die am Startpunkt beginnen.
In VBA kannst Du jetzt mit einer Laufschleife von 1 bis Anzahl der Wege, ganz bequem die Zeilennummern der betreffenden Wege rauslesen.
Da in Deinem Fall die Wege in beide Richtungen begangen werden können musst Du entweder jeden Weg doppelt definieren (einmal von Raum 1 nach Raum 2, einmal von Raum 2 nach Raum 1) oder eine oder-Abfrage in die Formeln bauen. Ich empfehle erstes, da Du x-mal diese oderabfrage mach musst, da Du nie weist, in welche Richtung der Weg gegangen wird.
Dann musst Du überprüfen, ob das Ziel erreicht ist (Ende des letzten Weges = Ziel)
Du sollst auch überprüfen, dass kein Weg doppelt begangen wird (über Anzahl bzw Anzahl2)
Du musst das für die maximal mögliche Anzahl der Teilwege machen (Bei mir waren es 16)
Dann definierst Du noch die Länge der Wege und summierst die Weglängen auf und nimmst den kürzesten Gesamtweg als Ergebnis
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige