Ich gebe in J12 eine Zahl ein. Wenn ich nun Enter drücke
soll ein Makro ablaufen, aber nur wenn in J17 ein X steht.
Das Makro befindet sich in einem Modul.
Geht das?
Vielen Dank für eure Hilfe!
Tschüß
Rolf
Das Makro befindet sich in einem Modul.
Geht das?
Vielen Dank für eure Hilfe!
Tschüß
Rolf
diesen code mußt du in den codebereich der tabelle pasten, in dem sich die cell j17 befindet (sprich im Entwicklungsbereich im Projekt-Explorer-Fenster Doppelklick auf das entsprechende Tabellenblatt).
gruß, axel
Private Sub Worksheet_Change(Target As Excel.Range)
If Target.Address = "$J$12" Then
Call DeinMakro_Name
End If
End Sub
Der Code muss in das Klassenmodul der Tabelle wo er funktionieren soll.
Gruss Rainer
"And UCASE(Target.Value) = "X" Then
habe ich vergessen:-)
Gruss Rainer
Code eingefügt mit Syntaxhighlighter 1.16
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Address <> "$J$12" Then Exit Sub
If ucase(Sh.[j17]) = "X" Then MsgBox "juhu" 'oder deinmakro...
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Address <> "$J$14" Then Exit Sub
If UCase(Sh.[j17]) = "X" Then
urkunde12042003
End If
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Address = "$J$14" And UCase((Sh.[j17])) = "X" Then
Call urkunde12042003
End If
End Sub
Was du woran es liegt ?
Tschüß
Rolf
Verwende die Form die ich dir geschrieben habe, dann funktioniert es auch ;-).
Mischen ist in dem Fall nicht angesagt,... ausser es wird richtig gemischt :-)
Gruss Rainer
Das makro soll nur ablaufen, wenn in J17 ein X steht.
(In J14 werden Zahlen eingeben und in J17 das X eingetragen)
Tschüß
Rolf
... das ist nicht nachvollziehbar.
Der Code "Private Sub WorkSheet_Change" muss in die Tabelle kopiert werden wo er funktionieren soll.
Der Code "Private Sub Workbook_SheetChange" muss unter "Diese Arbeitsmappe" kopiert werden.
Der Code darf NICHT in ein Modul koopiert werden, auch Teile davon nicht !!!!
Die reservierten Variablen existeren dort nicht.
Der Code ist getestet und funktioniert bei mir so wie oben beschrieben.
Die 14 musst du dann halt in 17 ändern.
Gruss Rainer
Um nicht ständig umständlich einen Button zu betätigen, damit die Urkunde ausdruckt wird, habe ich gedacht, ich schaffe eine zusätzliche Möglichkeit und zwar:
Wenn in Zelle J17 ein X (Buchstabe X ) soll das neue Makro ablaufen
Beispiel:
Wenn ein X in Zelle 17 steht, soll wenn in Zelle J14 eine Zahl eingegeben wird gleich nach betätigen von Enter die Urkunde ausgedruckt werden.
Das steht zur Zeit in Tabellenblatt Urkunde.
Private Sub Worksheet_Activate()
If MsgBox("Bitte immer daran denken, die Ergebnistabellen, vor dem Druck der Urkunden zu aktualisieren!!", vbYes + _
vbQuestion, "Erinnerung!!") = 6 Then
MsgBox "OK!"
'Else
' MsgBox "Nein"
End If
End Sub
Option Explicit
Private Sub WorkSheet_Change(ByVal Target As Range)
If Target.Address = "$J$14" And UCase(Target.Value) = "X" Then
Call urkunde12042003
End If
End Sub
Vieleicht verstehst du mich jetzt?
Tschüß
Rolf
Gruss Rainer
Danke!
Tschüß
Rolf