Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
624to628
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
624to628
624to628
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Abgleich mit fester Reihenfolge

Abgleich mit fester Reihenfolge
16.06.2005 12:23:49
Harald
Hallo Forum,
ich steh mir mal wieder selbst im Weg :-(
Das Problem: Damit mein Analyse-Code losläuft, ist es zwingend erforderlich, dass in B2:B7 der Sollzustand (siehe unten) herrscht.
Ab und zu fehlt eine Zeile. Das kriegt die Datenbank nicht anders gebacken, wenn alle Folgewerte dieser Zeile = 0 sind.
Spalte B ist bereits aufsteigend sortiert.
Soll:
Spalte B
1
1
2
2
3
3
Ist: (z.B.:)
1
1
2
3
3
In diesem Fall muss über der ersten 3 eine Zeile für die zweite 2 eingefügt werden, sowie in den Spalten D:BX der eingefügten Zeile eine 0 stehen.
Zum Ablachen...hier mein unvollständiger Ansatz. Für den Fall, das eine Zeile eingefügt werden muss, sind noch verschiedene andere Dinge zu tun. Das krieg ich aber auf die Reihe.Es geht nur um die Abfrage-Schleife(n).

Sub test()
'If Application.WorksheetFunction.Sum(Range("C2:C7")) <> 9 Then
n = 1
For i = 2 To 7
If Cells(i, 2) <> n Or Cells(i + 1, 2) <> n Then
Rows(i + 1).Insert Shift:=xlDown
Range("B" & i & ":B" & i + 1) = n
End If
n = n + 1
Next i
'End If
'Call Analyse
End Sub

https://www.herber.de/bbs/user/23913.xls
Vielen Dank
Harald

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Abgleich mit fester Reihenfolge
16.06.2005 18:29:52
IngGi
Hallo Harald,
wenn ich dich richtig verstanden habe, fehlt immer - wenn überhaupt - nur eine einzige Zeile. D.h. es fehlt entweder eine 1, eine 2 oder eine 3. Dann reicht es aus, immer nur die zweite Zeile in der Schleife zu prüfen. Das sieht dann z.B. so aus:

Sub Zeilen_einfügen()
Dim i As Byte, n As Byte
n = 1
For i = 3 To 7 Step 2
If Cells(i, 2) <> n Then
Rows(i).Insert
Cells(i, 2) = n
'weiterer Code nach Einfügen einer Zelle
End If
n = n + 1
Next i
End Sub

Bei dem Insert-Befehl kannst du übrigens auf shift:=xlDown verzichten, da du ja sowieso eine ganze Zeile einfügst.
Gruß Ingolf
Anzeige
Bestens... Vielen Dank o.w.T.
17.06.2005 08:06:52
Harald
Gruß
Harald

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige