Aktive Zelle einer Spalte soll Makro starten
Hallo Excelexperten,
kann beim klicken auf eine Zelle mit Daten, der Salte A einen Befehl oder Makro gestartet werden, ohne die Daten zu verändern?
If ....... Then
Gruß
fedjo
Antwort schreiben
Antwort 1 von Hajo_Zi vom 30.11.2019, 14:07 Options
Hallo Fedjo,
unter der Tabelle
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Gruß Hajo
Antwort 2 von rainberg vom 30.11.2019, 14:10 Options
Hallo fedjo,
ja das geht, daür hält VBA 3 verschiedene Ereignisse bereit.
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'
'Hier die Befehle
'
End Sub
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
'
'Hier die Befehle
'
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
'Hier die Befehle
'
End Sub
Kannst ja mal schildern, was Du möchtest.
Gruß
Rainer
Antwort 3 von fedjo vom 30.11.2019, 14:18 Options
Hallo Hajo,
danke für die schnelle Antwort, es sollte aber auch die Zelle überprüft werden ob Daten eingetragen sind.
Gruß
fedjo
Antwort 4 von Hajo_Zi vom 30.11.2019, 14:28 Options
Hallo Fedjo,
Du hast geschrieben Auswahl und nicht Eingabe. Eingabe ist
Private Sub Worksheet_Change(ByVal Target As Range)
Gruß Hajo
Antwort 5 von fedjo vom 30.11.2019, 15:13 Options
Hallo Hajo, Rainer
ich konnte meine Frage nicht richtig verständlich ausdrücken.
Kann mit einer If Abfrage festgestellt werden, ob die AktiveCell sich in der Spalte A befindet.
Gruß
fedjo
Antwort 6 von rainberg vom 30.11.2019, 15:20 Options
Hallo fedjo,
Sub test()
If ActiveCell.Column = 1 Then
MsgBox "ja"
Else
MsgBox "nein"
End If
End Sub
Gruß
Rainer
Antwort 7 von fedjo vom 30.11.2019, 15:32 Options
Hallo Rainer,
genauso habe ich mir das vorgestellt, funktioniert super!!
Danke für die Hilfe.
Gruß
fedjo
Antwort 8 von fedjo vom 30.11.2019, 16:06 Options
Hallo,
habe da noch eine andere Frage:
Wenn eine UserForm mehrere Textboxen enthält, und eine davon ist leer, dann soll sie beim übertragen der Daten in die Tabelle (überschreiben) nicht berücksichtigt werden!
Kann man das mit VBA erreichen?
Der Code sieht jetzt so aus:
TextBox49 = ActiveCell.Offset(0, 0).Value
Ich hoffe mich verständlich ausgedrückt zu haben.
Gruß
fedjo