Hallo Experten,
Ich habe folgendes Problem! Ich möchte, dass die aktive Zelle farbig hinterlegt wird! Das konnte ich durch folgenden Code erreichen:
Public OldRng As Range
Dim lastcell As Range
Dim farbe As Integer
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
On Error Resume Next
ActiveSheet.Unprotect
If Target.Count > 1 Then Exit Sub
lastcell.Interior.ColorIndex = farbe
farbe = Target.Interior.ColorIndex
Target.Interior.ColorIndex = 19
Set lastcell = Target
End Sub
Das Problem ist jetzt aber, dass Copy/Paste nicht mehr funktioniert! Wer hat eine Idee?? Vielen Dank im Voraus!
Gruss,
Philip
Ich habe folgendes Problem! Ich möchte, dass die aktive Zelle
farbig hinterlegt wird! Das konnte ich durch folgenden Code
erreichen:
Das Problem ist jetzt aber, dass Copy/Paste nicht mehr
funktioniert! Wer hat eine Idee?? Vielen Dank im Voraus!
Hi Philip,
probiers mal so:
DieseArbeitsmappe:
Option Explicit
Private Sub Workbook\_Open()
farbe = Range("A1").Interior.ColorIndex
Range("A1").Interior.ColorIndex = 19
Set lastcell = Range("A1")
Wert = Range("A1").Value
Application.EnableEvents = False
Range("A1").Select
Application.EnableEvents = True
End Sub
Tabelle1:
Option Explicit
Private Sub Worksheet\_SelectionChange(ByVal Target As Excel.Range)
Dim Modus As Integer
ActiveSheet.Unprotect
If Target.Count \> 1 Then Exit Sub
Wert = lastcell.Value
Modus = Application.CutCopyMode
lastcell.Interior.ColorIndex = farbe
farbe = Target.Interior.ColorIndex
Target.Interior.ColorIndex = 19
Application.EnableEvents = False
Select Case Modus
Case 1
lastcell.Copy Destination:=Target
Modus = 0
Application.CutCopyMode = 0
Target.Interior.ColorIndex = 19
Case 2
lastcell.Cut Destination:=Target
Modus = 0
Application.CutCopyMode = 0
Target.Interior.ColorIndex = 19
End Select
Application.EnableEvents = True
Set lastcell = Target
End Sub
Modul1:
Option Explicit
Public Wert As Variant
Public lastcell As Range
Public farbe As Integer
Gruß
Reinhard
Hallo Reinhard!
Ich danke dir mal wieder recht herzlich 
Bei der Zeile: „Wert = lastcell.Value“ kommt aber der Hinweis, dass die Objektvariable nicht festgelegt wurde!?
Habe auch versucht die Variablen ausserhalb von Modul1 festzulegen- klappt aber auch nicht! Hast du eine Idee?
Gruss,
Philip
Bei der Zeile: „Wert = lastcell.Value“ kommt aber der Hinweis,
dass die Objektvariable nicht festgelegt wurde!?
Habe auch versucht die Variablen ausserhalb von Modul1
festzulegen- klappt aber auch nicht! Hast du eine Idee?
Hi Philip,
leider nein, anfangs kam der Fehler auch, bei den letzten Tests nicht mehr und ich dachte er wäre weg. Warum lastcell aufeinmal „leer“ ist, kann ich mir nicht erklären.
Ich behalf mir so:
Sub tt()
farbe = Range(„A1“).Interior.ColorIndex
Set lastcell = Range(„A1“)
Wert = Range(„A1“).Value
End Sub
aber das ist nur ein workaround, nicht die Lösung.
Übrigens, in „DieseArbeitsmappe“ gehört noch:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveCell.Interior.ColorIndex = farbe
End Sub
Gruß
Reinhard
Hi Philip
diesem Thema wurde schon früher in diesem Forum behandelt,
die folgende Lösung ist also nicht auf meinem Mist gewachsen.
Trage bitte folgenden Code ein
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UsedRange.Interior.ColorIndex = xlNone
Target.Interior.ColorIndex = 34
End Sub
Gruß Wolfgang
Hi Reinhard,
das mit Sub tt() funktioniert bei mir leider auch nicht…
Wo fügst du den Code denn ein?
Gruss,
Philip
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
das mit Sub tt() funktioniert bei mir leider auch nicht…
Wo fügst du den Code denn ein?
Hallo Philip,
bei dem Code ist das egal, prinzipiell ins Modul1.
Gruß
Reinhard
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UsedRange.Interior.ColorIndex = xlNone
Target.Interior.ColorIndex = 34
End Sub
Hallo Wolfgang,
danach geht aber auch kein Strg-C Strg-V mehr. beim Wechsel auf eine andere Zelle geht der Kopiermodus verloren.
Gruß
Reinhard
Bei der Zeile: „Wert = lastcell.Value“ kommt aber der Hinweis,
dass die Objektvariable nicht festgelegt wurde!?
Habe auch versucht die Variablen ausserhalb von Modul1
festzulegen- klappt aber auch nicht! Hast du eine Idee?
Hallo Philip,
ich habe woanders nachgefragt, Public-Variablen verlieren anscheinend ihren Wert wenn der VB-Editor geöffnet ist. Warum weiß keiner, also Editor zu und ausprobieren, wenn der Fehler immer noch kommt melde dich halt, wobei ich grad Null Plan habe wodran es denn dann liegen könnte 
Eine Rückmeldung ob es wirklich am Editor lag wäre auch nett.
Gruß
Reinhard