Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1840to1844
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

Code Kürzung

Code Kürzung
28.07.2021 16:44:34
Sigi
Hallo,
in Spalte A sing Fahrten aufgeführt.
Nun soll jede Möglichkeit "Abfahrt und Ziel" ausgegeben werden.
Siehe meinen Code
Danke!
Gruß
Sigi
https://www.herber.de/bbs/user/147352.xlsm

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code Kürzung
28.07.2021 17:04:03
onur
"Siehe meinen Code" ?
Wie wäre es mal mit einer Erläuterung?
Soll man jetzt die Datei runterladen UND deinen Code analysieren, nur um zu erfahren, was du willst?
AW: Code Kürzung
28.07.2021 17:16:07
Daniel
Hallo

Dim x1 As Long, x2 As Long, z As Long
z = 2
For x1 = 2 To WorksheetFunction.CountA(Columns(1)) - 1
For x2 = x1 + 1 To WorksheetFunction.CountA(Columns(1))
Cells(z, 5).Resize(, 2) = Array(Cells(x1, 1), Cells(x2, 1))
z = z + 1
Next
Next
Gruß Daniel
AW: Code Kürzung
28.07.2021 17:28:29
Sigi
Hallo Daniel,
vielen Dank für Deine rasche Hilfe!
Bin begeistert von dem kurzem Code.
Gruß
Sigi
Einfache Kombinatorik, aber ...
28.07.2021 17:31:29
Yal
... Onur hat recht: Du hättest Dir ein Bischen mehr Mühe geben können.
Der einzige grund, warum ich antworte, ist dass Daniel eine unvollständige Lösung erwischt hat (wolltest wieder der schnellster sein, Du Streber ;-)
20 Punkte ergeben 190 OneWay-Kombinationen: n*(n-1)/2
Das doppelte, wenn Gegenrichtung auch einbezogen werden soll.
hier nur OneWay:

Sub FahrtenAusgeben()
Dim Z1, Z2
With ThisWorkbook.Worksheets("Fahrten")
.Range("E1:F1") = Array("Abfahrt", "Ziel")
For Each Z1 In .Range("A2:A21").Cells
For Each Z2 In .Range(Z1.Offset(1, 0), .Range("A21")).Cells
.Range("E99999").End(xlUp).Range("A2:B2") = Array(Z1.zalue, Z2.Value)
Next
Next
End With
End Sub
VG
Yal
Anzeige
Entschuldigung, Daniel...
28.07.2021 17:35:02
Yal
@Daniel: Entschuldigung, Entschuldigung, Entschuldigung!!
Ich nehme alles zurück: meine Anmerkung "unvollständig" basiert auf den Beispiel, das Sigi geliefert hat, nicht dein Code, der eigentlich doch vollständig ist (ich bin derjenige, der hier zu schnell gelesen hat)
VG
Yal
AW: Entschuldigung, Daniel...
28.07.2021 18:48:04
Daniel
Bei deiner Interpretation der Aufgabe hätte ich auf die Schleifen verzichtet:

With Range("E2").Resize(20 ^ 2, 2)
.Columns(1).Formula = "=INDEX(A:A,2+QUOTIENT(ROW(A1)-1,20))"
.Columns(2).Formula = "=INDEX(A:A,2+MOD(ROW(A1)-1,20))"
.Formula = .Value
End With
Gruß Daniel
Anzeige
AW: Entschuldigung, Daniel...
29.07.2021 00:02:50
Yal
Hallo Daniel,
ich gehe von 380 Kombinationen aus. Die 20 rechtlichen wären, die wo Start und Ziel dieselbe Ort sind.
Trotzdem sehr schön.
VG
Yal
und ich liefere wieder dieselbe Lösung wie Du :-(
28.07.2021 17:37:49
Yal
zweimal dieselbe Fehler (s'ärgert mich)
AW: und ich liefere wieder dieselbe Lösung wie Du :-(
28.07.2021 18:21:13
Sigi
Hallo Onur,
Hallo Yal,
ich habe ich deswegen so kurz gehalten, weil ich nicht wusste wie ich mich ausdrücken sollte um mein Problem darzustellen.
Auch glaube ich, dass mein Code, wenn ich ihn hier beschrieben hätte, etwas gebracht hätte.
Vielen Dank für die Hilfe!
Gruß
Sigi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige