PDA

Vollständige Version anzeigen : VBA Zellenfarbe wechseln nach Bearbeitung


Lilalauneandreas
30.09.2016, 22:25
Guten Abend.

Habe einen guten Code erhalten, der meine active Tabellenzelle nach der Bearbeitung der Zelle C , mit einer "Weiterschaltfläche" dessen Farbe nach grün wechseln lässt. Super:grins:

Wollte den Code umbauen- es soll nicht die Aktive Zelle ( die immer Spalte C ist) -die Farbe wechseln, sondern zwei Spalten davor (also Spalte A) in der activen Zeile.

Wie lautet dann der Code? Active Zelle- zwei Spalten - soll Farbe grün erhalten???:boah:


Private Sub CommandButton19_Click()
Dim z As Long
Dim r As Long

Range(TextBox19.Value) = TextBox17.Value
Range(TextBox15.Value) = TextBox16.Value


' ich kommentiere das mal aus...
'z = Cells(ActiveCell.Row, "A") 'aktuelle Lfd. Nr
'r = ZeilenNr(z + 1) 'zutreffende Zeilen# der nächsten Lfd. Nr
'Cells(r, ActiveCell.Column).Select 'auf nächste Zeile positionieren

' ... weil das so gedacht war:
ActiveCell.Interior.Color = vbGreen ' erst das Grün
If (ActiveCell.Row Mod 49) <> 0 Then
ActiveCell.Offset(1).Select
Else
ActiveCell.Offset(20).Select
End If


UserForm_Initialize
End Sub


Wer kann mir auf die Sprünge helfen?

Danke im Vorraus
Lilalauneandreas:boah:

Crazy Tom
30.09.2016, 22:30
Hallo

Cells(ActiveCell.Row, 1)

MfG Tom

Lilalauneandreas
30.09.2016, 22:52
Danke-Tom musste erst mal schauen wohin- aber geht gut.

:grins:


Hätte noch ne Frage.

Wenn ich meine Userform1 immer per Doppelklick auf den Spaltenbereich C öffnen lassen möchte- wo muß ich was für einen Code hinterlegen. Ist auch der Tabellename entscheidend? Es ist "Tabelle1" und Tabelle "Bearbeiten"!

Danke
Grüße Lilalauneandreas:rolleyes:

Crazy Tom
01.10.2016, 06:29
Hallo

das gehört in das Modul von deinem Tabellenblatt
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("C2:C15")) Is Nothing Then
Cancel = True
UserForm1.Show
End If
End Sub
in diesem Fall öffnet sich die Userform nur bei Doppelklick in Spalte C im Bereich C2 bis C15

MfG Tom

Crazy Tom
01.10.2016, 06:33
Hallo

oder auch so für die ganze Spalte C

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 3 Then
Cancel = True
UserForm1.Show
End If
End Sub

MfG Tom

Lilalauneandreas
01.10.2016, 13:42
Danke Tom, genau so sollte es funktionieren.
Grüße Andreas