Live-Forum - Die aktuellen Beiträge
Datum
Titel
18.04.2024 18:04:29
18.04.2024 16:33:24
Anzeige
Archiv - Navigation
1812to1816
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

Struktur Stückliste erstellen

Struktur Stückliste erstellen
23.02.2021 15:42:48
Henry
Hallo zusammen,
ich möchte ein Makro schreiben, mit welchem ich eine eigerückste Stückliste anhand von Positionsnummern erstellen kann.
Folgendes ist die Ausgangssituation (alle Werte in einer Spalte)
10
10
20
30
20
30
40
10
10
20
50
das Ziel soll so aussehen
10
....10
....20
....30
20
30
40
....10
........10
........20
50
Es müsste also immer der Inhalt der Zelle geprüft werden. Sobald dieser 10 ist muss eine Spalte nach rechts gewechselt werden. Gleichzeitig muss erfasst werden wieviel Spalten nach rechts gewechselt wurde und erkannt werden wenn wieder nach links gesprungen werden muss. Die Zahl der Ebenen ist dabei nicht begrenzt
kann mir jemand einen Ansatz liefern an dem ich aufbauen kann?
Beste Grüße
Henry

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Struktur Stückliste erstellen
23.02.2021 22:39:05
Tobias
Hallo Henry,
ohne klare Struktur wann der eingerückte Bereich vorbei ist, sehe ich da schwarz....woher soll das Programm wissen, wenn jetzt in deinem Beispiel im zweiten eingerückten Bereich noch 30 und 40 kommen würden, das die 50 eine alleinige Position ist und nicht auch eingerückt? Ich denke da musst du di nochmal grundlegende Gedanken zu machen.
Schöne Grüße
Tobias
AW: Struktur Stückliste erstellen
24.02.2021 10:01:33
Henry
Hallo Tobias,
eingerückt werden muss immer, sobald wieder die Position 10 auftritt.
Die Positionsnummern sind leider vorgegeben durch das Programm (Xpert) aus welchem ich die Daten gewinne.
Ebene1....Ebene2....Ebene3
10
...........10
...........20
...........30
20
30
40
...........10
......................10
......................20
50
Das Programm müsste also immer sobald die Zahl 10 auftritt in die nächste Ebene rücken.
Gleichzeitig muss es auch immer überprüfen ob die aktuelle Positionsnummer ein Nachfolger aus der vorangegangenen Ebene ist:
10 (1. Zeile bleibt bestehen)
....10 (einrücken, da Positionsnummer 10)
....20
....30
20 (Zahl ist Nachfolger von 10 also ausrücken)
30
Anzeige
AW: Struktur Stückliste erstellen
24.02.2021 15:35:08
GeorgH
Hallo Henry,
teste mal
Sub versetzen()
Dim iColOffset As Integer
Dim lLastVal As Long
Dim checkVal As Variant
iColOffset = 0
lLastVal = 0
For Each checkVal In Worksheets("Tabelle1").Range("A:A").SpecialCells(xlCellTypeConstants,  _
xlNumbers)
If checkVal = 10 And lLastVal  0 Then 'falls der erste Wert 10 ist, nicht versetzen
iColOffset = iColOffset + 1
ElseIf (checkVal - lLastVal  10) Then 'Wenn Differenz von aktuellem-Wert zu Vorgänger- _
Wert  10, dann ist der aktuelle Wert kein Nachfolger
iColOffset = 0
End If
checkVal.Offset(0, iColOffset) = checkVal.Value
lLastVal = checkVal ' Wert als Vorgänger-Wert setzen
If iColOffset  0 Then
checkVal.ClearContents
End If
Next checkVal
End Sub
VG
Georg
Anzeige
AW: Struktur Stückliste erstellen
25.02.2021 09:19:33
Tobias
Hallo Henry,
meiner Meinung nach kann das so nicht gelöst werden, du musst deine Daten anders exportieren.
Wie soll man erkennen das die 20 in deinem unteren Beispiel eingerückt sein soll und nicht die auf 10 folgende Position ist? Du brauchst ein weiteres Kriterium beim Export.
Schöne Grüße
Tobias

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige