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

Ich schaff das einfach nicht!!!

Ich schaff das einfach nicht!!!
16.01.2008 14:27:06
Daniel
Hallo liebes Excel-Team,
Spalte für Spalte möchte ich ab Spalte B voneinander unabhängige Veranstaltungen planen.
Die Zeilen beinhalten dabei Informationen zur jeweiligen Veranstaltung (A1:Datum, A2:Material, A3:Anfahrtsskizze, A4:Anschrift).
Nun will ich erreichen, dass eine Funktion NUR EINMAL ausgeführt wird SOBALD B2 und B3 und B4 erstmalig den Zellwert "ok" enthalten. Ein löschen dieser Zellen und anschließend wieder eingefügtes "ok" soll keinerlei Funktion mehr auslösen.
Das ganze will ich dann auf alle bevorstehenden Veranstaltungen erweitern aber jedes Mal ganz unabhängig zur vorherigen Veranstaltung.
Ich habe aus dem Forum das folgende Konstrukt gefunden und etwas angepasst an meinen Fall. Aber so wirklich hilft es in meinem Fall nicht.
If Target.Row 2 Then Exit Sub
If Target.Row > 4 And Target.Column 2 Then Exit Sub
If Not IsEmpty(Range("B6").Value) And _
Not IsEmpty(Range("B7").Value) And _
Not IsEmpty(Range("B8").Value) And _
Not IsEmpty(Range("B9").Value) Then _
irgendeineFunktionAusführen
Das ganze soll nun auch für alle weiteren Spalten (also Veranstaltungen) nach Spalte B funktionieren (vielleicht mittels eines Zählers ?):
If Target.Row 2 Then Exit Sub
If Target.Row > 4 And Target.Column 2 Then Exit Sub
If Not IsEmpty(Range("C6").Value) And _
Not IsEmpty(Range("C7").Value) And _
Not IsEmpty(Range("C8").Value) And _
Not IsEmpty(Range("C9").Value) Then _
irgendeineFunktionAusführen
If Target.Row 2 Then Exit Sub
If Target.Row > 4 And Target.Column 2 Then Exit Sub
If Not IsEmpty(Range("D6").Value) And _
Not IsEmpty(Range("D7").Value) And _
Not IsEmpty(Range("D8").Value) And _
Not IsEmpty(Range("D9").Value) Then _
irgendeineFunktionAusführen
und so weiter und so fort....
Kann mir jemand dabei helfen?
Gruß
Dany

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ich schaff das einfach nicht!!!
16.01.2008 15:03:00
fcs
Hallo Daniel,
wenn ich dich richtig verstanden habe, dann müsste folgendes funktionieren. Damit das Makro nicht mehr ausgeführt wird, wenn in den Zeilen 2, 3 und 4 einer Spalte erstmalig "ok" steht, dann muss in einer Hilfszeile (in meinem Beispiel 24) für jede Spalte (Veranstaltung) ein entsprechender Merker eingetragen werden.
Gruß
Franz

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Row >= 2 And Target.Row = 2 _
And Cells(24, Target.Column)  True Then
If Not IsEmpty(Cells(6, Target.Column)) And _
Not IsEmpty(Cells(7, Target.Column)) And _
Not IsEmpty(Cells(8, Target.Column)) And _
Not IsEmpty(Cells(9, Target.Column)) Then
Call Testfunktion
If Cells(2, Target.Column) = "ok" And Cells(3, Target.Column) = "ok" _
And Cells(4, Target.Column) = "ok" Then
Cells(24, Target.Column) = True
End If
End If
End If
End Sub
Sub Testfunktion()
MsgBox "test"
End Sub


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige