Zellinhalt abhängig von Cursorposition?



Excel-Version: Versionsunabhängig
nach unten

Betrifft: Zellinhalt abhängig von Cursorposition?
von: Martin
Geschrieben am: 04.07.2002 - 11:16:36


Hallo,

ich frage mich, ob es möglich wäre ein Zeichen zB in A1 darstellen zu lassen, wenn der Cursor sich in B1 befindet.

Konkret: Cursor in B1. In A1 soll ">" und in C1 "<" erscheinen.
Das Ziel ist es, unabhängig von der Hintergrundfarbe und ein- bzw. ausgeschalteten Spalten- und Zeilenköpfen die aktive Zeile 'sichtbarer' zu machen. Es gibt zwar Makros, mit denen man die gesamte Zeile highlighten kann. Das Problem hierbei ist aber, dass die gesamte Formatierung flöten geht und das ist inakzepabel. Ausserdem will ich nur einen teilweisen Bereich, nicht aber die gesamte Zeile kenntlich machen.

Mit einer Formel geht so etwas wohl leider nicht. Aber geht das mit VBA?

Gruss,
Martin

nach oben   nach unten

Re: Zellinhalt abhängig von Cursorposition?
von: Hajo_Zi
Geschrieben am: 04.07.2002 - 11:21:37

Hallo Martin

falls immer nur eine Zelle angewählt wird. Kannst Du mit folgendem Code die Zelle mit Rot darstellen.

folgenden Code in ein Modul


Option Explicit
Public OldColorIndex As Variant
Public OldRange As String

folgender Code in die Tabelle Im Beispiel Tabelle1
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'   Beim 1. Aufruf ist OldRange noch undefiniert
    If OldRange = "" Then
        OldRange = Target.Address
        OldColorIndex = Target.Interior.ColorIndex
'       Setze Hintergrundfarbe der aktiven Selection auf Rot
        Target.Interior.ColorIndex = 3
    Else
'       Setze alten Range auf alte Farbe
        If Range(OldRange).Interior.ColorIndex = 3 Then
            Range(OldRange).Interior.ColorIndex = OldColorIndex
        End If
        OldColorIndex = Target.Interior.ColorIndex
'       Merke mir aktuellen Adresse für nächsten Aufruf
        OldRange = Target.Address
'       Setze Hintergrundfarbe der aktiven Selection auf Rot
        Target.Interior.ColorIndex = 3
    End If
End Sub

und folgender Code in DieseArbeitsmappe
Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    If OldRange <> "" Then Range(OldRange).Interior.ColorIndex = OldColorIndex
End Sub

Private Sub Workbook_Open()
    If ActiveSheet.Name = "Tabelle1" Then
        OldRange = ActiveCell.Address
        OldColorIndex = ActiveCell.Interior.ColorIndex
        ActiveCell.Interior.ColorIndex = 3
    End If
End Sub

falls Du nicht klar kommst maile mich an mit Bezug auf diesen Beitrag.

Gruß Hajo


nach oben   nach unten

Re: Zellinhalt abhängig von Cursorposition?
von: Hans W. Herber
Geschrieben am: 04.07.2002 - 11:28:42

Hallo Martin,

die Sache hat zwar m.E. nicht allzuviel Praxisrelevanz, weil ja Zellinhalte gelöscht werden, aber wenn Du meinst, Beispielarbeitsmappe unter:
https://www.herber.de/bbs/texte/10cursor.xls

hans

nach oben   nach unten

Re: Zellinhalt abhängig von Cursorposition?
von: Hajo
Geschrieben am: 04.07.2002 - 11:29:51

Hallo Hajo,

das ist wirklich toll! Vielen Dank, kann ich sehr gut gebrauchen.

Gruss,
Martin


nach oben   nach unten

Re: Zellinhalt abhängig von Cursorposition?
von: Martin
Geschrieben am: 04.07.2002 - 11:33:52

Danke Hans. Du hast recht, sehr praxisrelevant ist es wohl nicht, eher eine Spielerei. Ich werde es mal ausprobieren. Der Code ist einfacher als ich dachte und es ist genau was ich suche.

Beide Beispiele sind sehr interessant.

Vielen Dank
Martin


nach oben   nach unten

oops, wohl im Namen vertan?
von: Martin
Geschrieben am: 04.07.2002 - 11:35:19

Sorry Hajo, habe wohl meinen Namen vergessen?!

;-)

MARTIN


 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Zellinhalt abhängig von Cursorposition?"