Supportnet / Forum / Tabellenkalkulation
Mehrere Bedingungen
Frage
Hi Leute, habe bisher folgenden VBA installiert, der mir bei einer bestimmten Bedingung (wenn in Spalte X=24 eine "1" steht, wird die bestimmte Zeile in eine andere Tabelle verschoben).
Was muss ich tun, wenn ich eine zweite Bedingung einfuegen moechte.
Wenn in Spalte 24 (=X) eine "1" steht und in Spalte 6 (=F) ein "Yes", die Zeile nach "Tabelle1" kopieren.
Wenn in Spalte 24 (=X) eine "1" steht und in Spalte 6 (=F) ein "No", die Zeile nach "Tabelle2" kopieren.
Das ist mein bisheriger Code, bei dem mir "coros" (Oliver) sehr behilflich war:
Private Sub CommandButton1_Click()
ActiveSheet.Unprotect
Dim erste_freie_Zeile As Long, i As Long
Application.ScreenUpdating = False
Sheets("PhaseOut List").Unprotect
Sheets("PhaseOut Complete").Unprotect
For i = Sheets("PhaseOut List").Range("A65536").End(xlUp).Row To 1 Step -1
If Cells(i, 24) = 1 Then
erste_freie_Zeile = Sheets("PhaseOut Complete").Range("A65536").End(xlUp).Offset(1, 0).Row
Range(Cells(i, 1), Cells(i, 23)).COPY
If erste_freie_Zeile < 3 Then erste_freie_Zeile = 3
Sheets("PhaseOut Complete").Cells(erste_freie_Zeile, 1).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Rows(i).DELETE
End If
Next
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingRows:=True, AllowFiltering:= _
True
Sheets("PhaseOut Complete").Protect
End Sub
Antwort 1 von Beverly
Hi,
ich habe den Code nicht testen können, da ich das Beispiel nicht nachbauen kann, aber versuche es mal nach folgendem Prinzip
Beachte aber, dass du für Tabelle1 und Tabelle2 die erste freie Zeile durch getrennte Variablen ermitteln musst.
Bis später,
Karin
ich habe den Code nicht testen können, da ich das Beispiel nicht nachbauen kann, aber versuche es mal nach folgendem Prinzip
If Cells(i, 24) = 1 And Cells(i, 6) = "Yes" Then
´ erstes Ziel Tabelle1
ElseIf Cells(i, 24) = 1 And Cells(i, 6) = "No" Then
´ zweites Ziel Tabelle2
End If
Beachte aber, dass du für Tabelle1 und Tabelle2 die erste freie Zeile durch getrennte Variablen ermitteln musst.
Bis später,
Karin
Antwort 2 von bibahutzelmann
Hat geklappt, dankeschoen! Gruss aus dem kuehlen und verregneten Amerika... Jan

