dein Betreff hat ja wohl gar nichts mit dem zu tun, was du dann beschreibst. Und was du hier "durch die Auswahl der ersten Zeile (durch Dropdown) in das jeweilige Tabellenblatt verschiebt" mit verschiebt meinst, verstehe ich nicht.
Vielleicht beschreibst du noch einmal, was passieren soll, wenn du einen Wert in deinem Pulldownmenü auswählst. Zudem ist es besser eine Beispielmappe hochzuladen als ein Bild einzustellen.
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) = "A7" Then Worksheets(Target.Value).Activate End If End Sub
Der Code gehört ins Arbeitsblatt auf dem sich dein Pulldownmenü befindet, das wäre dann wohl dein Blatt "Cockpit". Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren
(12.01.2018, 07:52)Werner.M schrieb: Der Code gehört ins Arbeitsblatt auf dem sich dein Pulldownmenü befindet, das wäre dann wohl dein Blatt "Cockpit".
13.01.2018, 18:26 (Dieser Beitrag wurde zuletzt bearbeitet: 13.01.2018, 18:27 von dbiv.)
Sorry, wenn ich mich nicht richtig ausgedrückt habe.
Die Datei füge ich im Anhang an.
Ich möchte in jedem Arbeitsblatt außer Cockpit vorne in der Spalte Liste auswählen wohin (NeuInt, E-Mail, TAv, Schrott) die Zeile kopiert wird wird.
Beispiel Wenn ich unter NeuInt in der Spalte Liste per Dropdown z. Bsp. E-Mail auswähle, dann sollte die Zeile unter E-Mail in der nächsten freien Zeile hinein kopiert werden und unter NeuInt verschwinden. Die Daten sollten zu jedem Arbeitsblatt verschoben werden können
13.01.2018, 21:04 (Dieser Beitrag wurde zuletzt bearbeitet: 13.01.2018, 21:04 von Kuwer.)
Hallo Dieter,
folgender Code kommt in das schon vorhandene VBA-Modul DieseArbeitsmappe:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) Dim lngErsteZeile As Long Dim lngSpalten As Long If Sh.Name <> "Cockpit" Then If Target.Column = 1 And Target.Cells.Count = 1 Then If Len(Target.Value) Then lngErsteZeile = 5 lngSpalten = 18 With Worksheets(CStr(Target.Value)) .Cells(Application.Max(.Cells(.Rows.Count, 1).End(xlUp).Row + 1, lngErsteZeile), 1).Resize(1, lngSpalten).Value = _ Target.Resize(1, lngSpalten).Value Target.EntireRow.Delete End With End If End If End If End Sub