Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
424to428
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
424to428
424to428
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro wird nicht ausgeführt

Makro wird nicht ausgeführt
11.05.2004 18:13:56
Olli
Hallo @ all,
ich sitze nun schon Stunden vor einem Problem, das ich mir nicht erklären kann:
Ich habe ein Makro geschrieben, das Sprünge von Zelle zu Zelle innerhalb einer Tabelle A10 bis I19 betrifft:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 2 And Target.Column <> 6 And Target.Column <> 8 And Target.Column <> 9 Then Exit Sub
Debug.Print Target.Column
If Target.Row < 10 Or Target.Row > 19 Then Exit Sub
Debug.Print Target.Row
If Target.Column = 9 And Target.Row < 19 Then
Cells(Target.Row + 1, 2).Select
End If
If Target.Column = 6 Then
Cells(Target.Row, 8).Select
End If
If Target.Column = 2 And Target.Row = 10 Then
Cells(Target.Row, 6).Select
End If
End Sub

In einem leeren Tabellenblatt klappt alles. Wenn ich es aber in eine andere Tabelle einfüge, wird das Makro nicht ausgeführt; der Cursor springt immer zur nächsten Zelle. Vielleicht hat jemand eine Idee, wo ich noch nach dem Fehler suchen könnte?
Danke an alle!
Olli S.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro wird nicht ausgeführt
Ramses
Hallo
dann hast du es wohl an den falschen Ort kopiert ;-)
Es gibt keinen Grund warum es nicht funktionieren sollte.
Was ich allerdings nicht verstehe, sind die Zeilen
If Target.Column 2 And Target.Column 6 And Target.Column 8 And Target.Column 9 Then Exit Sub
Debug.Print Target.Column
If Target.Row 19 Then Exit Sub
Die sind überflüssig, und schliessen sich gegenseitig aus !!! weil es nicht möglich ist, gleichzeitig in mehreren Zellen ein Change-Ereignis auszulösen.
Lösche die Zeilen und es geht.
Gruss Rainer
DANKE, aber noch keine Lösung
12.05.2004 09:44:02
Olli
Hallo Rainer, hallo Ihr anderen,
VIELEN DANK, Du hattest natürlich Recht, habe Makro unkritisch abgetippt hier aus dem Forum. Habe Makro geändert:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row < 10 Or Target.Row > 19 Then Exit Sub
If Target.Column = 9 And Target.Row > 9 And Target.Row < 19 Then
Cells(Target.Row + 1, 2).Select
End If
If Target.Column = 6 Then
Cells(Target.Row, 8).Select
End If
If Target.Column = 2 And Target.Row = 10 Then
Cells(Target.Row, 6).Select
End If
End Sub

Problem weiterhin: Auf leerem Tabellenblatt geht es, in meiner Arbeitsmappe nicht! Hänge jetzt die Arbeitsmappe an, hoffentlich hat jemand eine Idee!!
https://www.herber.de/bbs/user/6251.xls
Anzeige
AW: DANKE, aber noch keine Lösung
Ramses
Hallo
DAS GEHT NICHT !!!!!
If Target.Column = 9 And Target.Row > 9 And Target.Row Es muss OR heissen.
Zusätzlich bezweifle ich, dass es mit dem leeren Tabellenblatt zusammenhängt.
Gruss Rainer
AW: DANKE, aber noch keine Lösung
Olli
Ich denke Code ist korrekt:
Wenn ausgewählte Spalte I UND ausgewählte Zeile größer 10 UND kleiner 19 (= nur bei Zeilenbereich 10-19), dann ...
Wie gesagt funktioniert das Makro auch im leeren Blatt, sobald ich den Code komplett in die Datei kopiere, geht er nicht mehr! :-(
DANKE aber trotzdem für Deine Mühe!
AW: DANKE, aber noch keine Lösung
Ramses
Hallo
Eine Zeile kann nicht gleichzeitig grösser UND Kleiner sein ;-))
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Target.Column
Case 9
Select Case Target.Row
Case 9 To 19
MsgBox "OK"
'Dein Code
End Select
End Select
End Sub

Gruss Rainer
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige