Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1616to1620
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

Problem mit Macro aktivierung über Liste

Problem mit Macro aktivierung über Liste
29.03.2018 15:00:22
Björn
Hallo zusammen,
ich bin seit heute neu im Feld der VBA Programmeirung und benötige Hilfe bei meinem Problem.
Ich habe eine Tabelle erstellt, in welcher über ein Liste verschiedene Makros ausgelöst werden sollen ("Ja" und "Nein"). Die Makros nehmen jeweils die Aktive Zeile und schieben sie in eine neue Tabelle.
Das eigentliche Problem ist jetzt, dass ich eine Fehlermeldung bekomme (Laufzeitfehler '424' Objekt erforderlich)
Vielen Dank im Vorraus.
'Hier der Code der ersten Seite:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("D:D")) Is Nothing Then
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
If Target.Value = "Ja" Then: Makro3
If Target.Value = "Nein" Then: Makro2
End If
End Sub

'Hier die Makros:

Sub Makro2()
'Bereich kopieren
Sheets("Tabelle1").Rows(ActiveCell.Row).Copy
'einfügen in erste freie Zeile in ausgabe
Sheets("Tabelle3").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
'Kopiermodus beenden
Application.CutCopyMode = False
Sheets("Tabelle1").Select
ActiveCell.EntireRow.Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlUp
End Sub
Sub Makro3()
'Bereich kopieren
Sheets("Tabelle1").Rows(ActiveCell.Row).Copy
'einfügen in erste freie Zeile in ausgabe
Sheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
'Kopiermodus beenden
Application.CutCopyMode = False
Sheets("Tabelle1").Select
ActiveCell.EntireRow.Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlUp
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit Macro aktivierung über Liste
29.03.2018 15:57:49
ChrisL
Hi Björn
Den Fehler kann ich nicht rekonstruieren. Vielleicht ist der Tabellenname falsch.
Den Code etwas gekürzt und dem Umstand Rechnung getragen, dass die ActiveCell nicht gleich Target ist:
Modul Tabelle1
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
If Not Intersect(Target, Range("D:D")) Is Nothing Then Call Verschieben(Target)
End Sub
Standardmodul
Sub Verschieben(rng As Range)
Dim WS As Worksheet
Select Case rng
Case "Ja": Set WS = Worksheets("Tabelle2")
Case "Nein": Set WS = Worksheets("Tabelle3")
Case Else: Exit Sub
End Select
rng.EntireRow.Copy
WS.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
rng.EntireRow.Delete Shift:=xlUp
End Sub
cu
Chris
Anzeige
AW: Problem mit Macro aktivierung über Liste
03.04.2018 08:42:32
Björn
Hallo Chris,
Vielen Dank für deine schnelle Antwort. Deine Version funktioniert genau so wie ich mir das vorgestellt habe. Vielen Dank für die Hilfe, ich werde jetzt deine version benutzen :)
Aber nochmal schnell zurück zum Fehler wenn ich nach der Fehlermeldung auf Debuggen klicke wird mir diese Zeile als Fehler angezeigt:
If Target.Value = "Nein" Then: Makro2
Wäre ja interessant für mich zu verstehen was genau falsch war.....
Danke auch für die anderen Antworten :)
Gruß Björn
AW: Problem mit Macro aktivierung über Liste
03.04.2018 08:57:49
Luschi
Hallo Björn
in Deiner Variante If Target.Value = "Nein" Then: Makro2
fehlt ein abschließendes 'End If', denn der Doppelpunkt simuliert einen Zeilenwechsel zum Fortführen des nächsten Befehls.
1. Variante (ohne Doppelpunkt):
If Target.Value = "Nein" Then Makro2
2. Variante (mit Doppelpunkt - dann aber 2!):
If Target.Value = "Nein" Then : Makro2 : End If
3. Variante (Standard):
If Target.Value = "Nein" Then
   Makro2
End If
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Problem mit Macro aktivierung über Liste
03.04.2018 09:06:12
Björn
Hallo Luschi,
vielen Dank für die Erklärung, so weis ich zumindest was ich falsch gemacht habe.
Ich probier das gleich mal aus vllt. funktioniert es ja doch:)
Gruß Björn
AW: Problem mit Macro aktivierung über Liste
29.03.2018 17:16:26
onur
Die Aussage "Das eigentliche Problem ist jetzt, dass ich eine Fehlermeldung bekomme (Laufzeitfehler '424' Objekt erforderlich)" sagt nicht viel aus ohne die Position der Fehlermeldung.
AW: Problem mit Macro aktivierung über Liste
29.03.2018 17:34:53
Hajo_Zi
dem kann man nur zustimmen.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige