Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
720to724
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
720to724
720to724
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ausgewälte Zelle - farbig??

Ausgewälte Zelle - farbig?
20.01.2006 23:51:04
Joachim
Hi,
ist es möglich das eine -ausgewählte Zelle- einen, sagen wir mal roten Rand erhält, damit man deutlich sieht wo man sich gerade befindet?
Gerade bei TFT-Displays (Notebook) ist mit unter sehr schwierig zu sehen, wo man gerade ist.
Alternativ würde auch eine Hintergrundfarbe für die gerade ausgewählte Zelle helfen.
Gruß
Joachim

31
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 00:28:53
Josef
Hallo Joachim!
Probier das mal aus!
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Workbook_Activate()
Call createLines(ActiveSheet)
End Sub


Private Sub Workbook_BeforePrint(Cancel As Boolean)
Workbook_Deactivate
End Sub


Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Workbook_Deactivate
End Sub


Private Sub Workbook_Deactivate()
On Error Resume Next
With ActiveSheet
  .Shapes("lineH").Delete
  .Shapes("lineV").Delete
End With
Set lineH = Nothing
Set lineV = Nothing
On Error GoTo 0
End Sub


Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Call createLines(Sh)
End Sub


Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
On Error Resume Next
With Sh
  .Shapes("lineH").Delete
  .Shapes("lineV").Delete
End With
On Error GoTo 0
End Sub


Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
If lineH Is Nothing Or lineV Is Nothing Then Call createLines(Sh)
With lineH
  .Left = 0
  .Width = Sh.Cells(1, Columns.Count).Left + Sh.Cells(1, Columns.Count).Width
  .Top = Target.Top + Target.Height
End With

With lineV
  .Top = 0
  .Height = Sh.Cells(Rows.Count, 1).Top + Sh.Cells(Rows.Count, 1).Height
  .Left = Target.Left + Target.Width
End With

On Error GoTo 0
End Sub


' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit
Option Private Module

Public lineH As Shape
Public lineV As Shape

Sub createLines(Sh As Worksheet)
With Sh
  On Error Resume Next
  .Shapes("lineH").Delete
  .Shapes("lineV").Delete
  On Error GoTo 0
  
  Set lineH = .Shapes.AddLine(0, 0, 0, 0)
  
  With lineH
    .Name = "lineH"
    .Line.Weight = 1#
    .Line.ForeColor.SchemeColor = 10
    .Left = 0
    .Width = Sh.Cells(1, Columns.Count).Left + Sh.Cells(1, Columns.Count).Width
    .Top = ActiveCell.Top + ActiveCell.Height
    .OnAction = "dmy"
  End With
  
  Set lineV = .Shapes.AddLine(0, 0, 0, 0)
  
  With lineV
    .Name = "lineV"
    .Line.Weight = 1#
    .Line.ForeColor.SchemeColor = 10
    .Top = 0
    .Height = Sh.Cells(Rows.Count, 1).Top + Sh.Cells(Rows.Count, 1).Height
    .Left = ActiveCell.Left + ActiveCell.Width
    .OnAction = "dmy"
  End With
  
End With

End Sub


Public Sub dmy()

End Sub


'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 00:39:43
Joachim
Hallo Sepp,
ist schon toll wieviel Hilfe du in diesem Forum allen zukommen lässt.
Ein Superlob an dich - ich glaube ich spreche im Namen vieler anderer Forumsteilnehmer.
Das (oder der Makro?- wie heisst's eigentlich richtig?) bleibt nach ein paar Zeilen stehen:
Private Sub Workbook_Deactivate()
Da gehts nicht mehr weiter.
Was nun?
Gruß
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 00:42:51
Josef
Hallo Joachim!
Danke für die Blumen!
Hast du den Code in die Richtigen Module kopiert?
Sind die Tabellen geschützt?
Wie es richtig heist, weis ich nicht, aber "der Makro" mag ich nicht, ich
sage immer "das Makro"!
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Alternative!
21.01.2006 01:35:26
Joachim
Hi,
der Tipp ist grossartig.
Das ist eigentlich schon , das Optimum - vor allem -Freeware-.
(Kann ich manchmal nicht verstehen.)
Danke dir für deine Hilfe und Tipps.
Ich denke cellspot reicht völlig und ich belaste die Arbeitsmape nicht unnötig.
--
Trotzdem würde ich gerne wissen - was ich mit das ( ;-) ) Makro falsch gemacht habe.
Gruß
Joachim
Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 01:14:58
Joachim
Hallo,
also -wie du weisst habe ich von VBA überhaupt keine Ahnung-
Meine Methode - ich machs und wunder (freu) mich wenns klappt.-
Du sagst - hast du es in die richtigen Module gepackt?
Ich habe den ersten Teil aus deiner Antwort kopiert.
In der Tabelle -F11 - Diese Arbeitsmappe - Auswahl Workbook - (rechts steht nun open)
hierhin habe ich den ersten Teil hineinkopiert.
Dann habe ich den zweiten Teil kopiert.
Bin dann wieder zurück und habe Allgemein ausgewählt - (recht steht Deklaration)
hierhin habe ich den zweiten Teil kopiert.
Nur glaub ich ist das wohl nicht OK.
Es läuft nicht und nach einer Kontrolle sehe ich, dass in beiden Bereichen das selbe steht - hat also wohl was mit der Vorgehensweise zutun.
Tabellen sind nicht geschützt- in einem Tabellenblatt ist jedoch noch ein anderes Makro untergebracht. Was du mir vor ein paar Tagen gemacht hast: Stichwort Zeilen wegschalten.
?
Gruß
Joachim
Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 01:29:17
Josef
Hallo Joachim!
Der erste Teil ist richtig! Gehört in das Modul "DieseArbeitsmappe".
Der zweite Teil gehört in ein allgemeines Modul!(Einfügen &gt Modul)
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

AW: Ausgewälte Zelle - farbig?
21.01.2006 01:49:23
Joachim
Hi, Sepp
also Cellspot ist gut - aber funktioniert nur bei ungeschützter Tabelle.
Meine Hoffnung war nun Dein Makro. -Ich habe es hinbekommen-
Doch auch hier - dasselbe. Die markierung friert ein und die Funktion ist ausser Kraft.
Und ... beim Druck wird das -Fadenkreuz- mitgedruckt.
Gibt's ne' Lösung?
Gruß
Joachim
Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 01:55:10
Josef
Hallo Joachim!
Bei geschützten Tabellen, wirst du evtl. nach dem Passwort gefragt.
Anders geht's nicht.
Beim Drucken werden die Linien gelöscht!
Im Zellkontextmenü, kannst du die Linien Ein- und Aus-Schalten.
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

'---------------------------------------------------------------------------------------
' Module : DieseArbeitsmappe
' DateTime : 21.01.2006 00:36
' Author : Josef Ehrensberger
' Purpose : Fadenkreuz in Tabelle
'---------------------------------------------------------------------------------------

Option Explicit

Private Sub Workbook_Activate()
Call addContext
Call createLines(ActiveSheet)
End Sub


Private Sub Workbook_BeforePrint(Cancel As Boolean)
Workbook_Deactivate
End Sub


Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Workbook_Deactivate
End Sub


Private Sub Workbook_Deactivate()
On Error Resume Next
Application.CommandBars("Cell").FindControl(Tag:="CellHigh").Delete
On Error GoTo 0
delLines ActiveSheet
End Sub


Private Sub Workbook_SheetActivate(ByVal sh As Object)
Call createLines(sh)
End Sub


Private Sub Workbook_SheetDeactivate(ByVal sh As Object)
On Error Resume Next
With sh
  .Shapes("lineH").Delete
  .Shapes("lineV").Delete
End With
On Error GoTo 0
End Sub


Private Sub Workbook_SheetSelectionChange(ByVal sh As Object, ByVal Target As Range)
On Error Resume Next
If Not bAction Then Exit Sub
If lineH Is Nothing Or lineV Is Nothing Then Call createLines(sh)
With lineH
  .Top = Target.Top + Target.Height
End With

With lineV
  .Left = Target.Left + Target.Width
End With

On Error GoTo 0
End Sub


' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

'---------------------------------------------------------------------------------------
' Module : Modul1
' DateTime : 21.01.2006 00:38
' Author : Josef Ehrensberger
' Purpose : Fadenkreuz in Tabelle
'---------------------------------------------------------------------------------------
Option Explicit
Option Private Module

Public lineH As Shape
Public lineV As Shape
Public bAction As Boolean

Sub createLines(sh As Worksheet)

If Not bAction Then Exit Sub

With sh
  
  If .ProtectDrawingObjects Then .Protect userinterfaceonly:=True, DrawingObjects:=False
  
  delLines sh
  
  Set lineH = .Shapes.AddLine(0, 0, 0, 0)
  
  With lineH
    .Name = "lineH"
    .Line.Weight = 1#
    .Line.ForeColor.SchemeColor = 10
    .Left = 0
    .Width = sh.Cells(1, Columns.Count).Left + sh.Cells(1, Columns.Count).Width
    .Top = ActiveCell.Top + ActiveCell.Height
    .OnAction = "dmy"
  End With
  
  Set lineV = .Shapes.AddLine(0, 0, 0, 0)
  
  With lineV
    .Name = "lineV"
    .Line.Weight = 1#
    .Line.ForeColor.SchemeColor = 10
    .Top = 0
    .Height = sh.Cells(Rows.Count, 1).Top + sh.Cells(Rows.Count, 1).Height
    .Left = ActiveCell.Left + ActiveCell.Width
    .OnAction = "dmy"
  End With
  
End With

End Sub


Sub delLines(sh As Worksheet)
With sh
  On Error Resume Next
  .Shapes("lineH").Delete
  .Shapes("lineV").Delete
  On Error GoTo 0
End With
Set lineH = Nothing
Set lineV = Nothing
End Sub


Public Sub dmy()

End Sub


Sub addContext()
Dim objCBB As CommandBarButton

With Application.CommandBars("Cell")
  
  On Error Resume Next
  .FindControl(Tag:="CellHigh").Delete
  On Error GoTo 0
  
  Set objCBB = .Controls.Add(Type:=msoControlButton, Temporary:=True)
  
  With objCBB
    .Caption = IIf(bAction, "CellHighLighter Aus", "CellHighLighter Ein")
    .Style = msoButtonIconAndCaption
    .Tag = "CellHigh"
    .OnAction = "HiLitOnOff"
    .FaceId = IIf(bAction, 342, 352)
    .BeginGroup = True
  End With
  
End With

Set objCBB = Nothing

End Sub


Private Sub HiLitOnOff()
With Application.CommandBars.ActionControl
  If Application.CommandBars.ActionControl.Caption = "CellHighLighter Aus" Then
    bAction = False
    .Caption = "CellHighLighter Ein"
    .FaceId = 352
    delLines ActiveSheet
  Else
    bAction = True
    .Caption = "CellHighLighter Aus"
    .FaceId = 342
    createLines ActiveSheet
  End If
End With
End Sub


'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 02:05:12
Joachim
Hallo,
danke - ich werde es morgen weitermachen - für heute reichts.
Bon nuit - Good night.
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 09:09:23
Hajo_Zi
Hallo Joachim,
warum ist die Frage offen? Das Du morgen weitermachen wirdst dafür können wir nichts und da können wir Dir auch nicht helfen.
Gruß Hajo
AW: Ausgewälte Zelle - farbig?
21.01.2006 09:55:59
Josef
Hallo Joachim!
Ich hab das jetzt in ein Addin gepackt, dann kannst du es unabhängig von der Mappe verwenden!
https://www.herber.de/bbs/user/30234.xla
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 12:08:35
Joachim
Hallo,
ich habe nun das AddIn installiert - nur es passiert nichts.....?
Auch der abgeänderte Code, den du mir gesendet hast, ist ohne Funktion.
(Ich habe es doch richtig verstanden - die geänderte Version ANSTELLE der zuerst gesendeten?)
Hübi hat mir noch eine andere Möglichkeit genannt:
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UsedRange.Interior.ColorIndex = xlNone
Target.Interior.ColorIndex = 3
End Sub

Das würde mir absolut genügen jedoch habe ich auch hier das Problem, dass es nur bei einer ungeschützten Tabelle funktioniert.
Hast du hier noch eine Möglichkeit?
Gruß
Joachim
Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 12:21:13
Josef
Hallo Joachim!
Hast du die Funktion im Kontextmenü der Zelle auch eingeschalten!
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

AW: Ausgewälte Zelle - farbig?
21.01.2006 12:55:18
Joachim
Hallo - moin moin -
Danke - habe ich gemacht - aber wenn Blatt geschützt gehts nicht mehr.
Auch das Fadenkreuz bleibt beim Druck sichtbar.
Wenn Blattschutz ein und dann wieder aus - kommt es auch zu einer Fehlermeldung (70).
Gruß
Joachim
Anzeige
AW: Ausgewälte Zelle - farbig?
21.01.2006 13:03:49
Josef
Hallo Joachim!
Kann ich nicht nachvollziehen! Welche Version benutzt du?
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

AW: Ausgewälte Zelle - farbig?
21.01.2006 13:13:11
Joachim
Ver. 2002
Jo
AW: Ausgewälte Zelle - farbig?
21.01.2006 17:19:39
Joachim
Hallo Sepp,
nochmals vielen Dank für deine Hilfe.
Dein AddIN nutze ich gerne - es hilft mir sehr beim Entwerfen.
(Dann bin ich ja mit ungeschützten Tabellen zugange.)
Ich habe eine Lösung -entsprechend meiner ursprünglichen Idee- bekommen.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
ActiveSheet.Unprotect ("passwort")
Static Zelle As Range
If Not Zelle Is Nothing Then
Cells.Interior.ColorIndex = xlColorIndexNone
End If
Target.Interior.ColorIndex = 6 ' Grün
Set Zelle = Target
ActiveSheet.Protect ("passwort")
End Sub

Funktioniert optimal und hat die angenehme Eigenschaft, dass die Tabelle immer wieder von neuem geschützt wird. Es müsste nun das PW des Makros zuerst -dann der Tabelle und der Mappe geändert werden, um an der Tabelle arbeiten zu können, denn solbald ich eine andere Zelle in der Tabelle anwähle ist das Blatt schon wieder geschützt. Für den Standardnutzer fast garnicht zu lösen - der gibt vorher entnervt auf.
Bis bald
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 00:37:50
Hübi
Hi Joachim,
nimmst du auch von einem Laien Code an, der den Hintergrund rot färbt?
Dann probiere dies
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UsedRange.Interior.ColorIndex = xlNone
Target.Interior.ColorIndex = 3
End Sub

Gruß Hübi
AW: Ausgewälte Zelle - farbig?
21.01.2006 01:20:47
Joachim
Hallo Hübi,
gerne nehme ich auch von LAIEN - ;-)
Doch nachdem ich es rüberkopiert habe -- da färbt sich nichts....?
Im Gegensatz zu dir habe ich überhaupt keine Ahnung von VBA...
Gruß
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 01:31:07
PeterW
Hallo,
markier mal eine Spalte, ändere deren Breite und schau, welcher Bereich mit UsedRange.Interior.ColorIndex = xlNone angesprochen wird.
Gruß
Peter
AW: Ausgewälte Zelle - farbig?
21.01.2006 02:02:53
Joachim
Hallo,
da färbt sich immer noch nichts....
Gruß
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 12:15:59
Joachim
Hi,
ich habe die Funktion nun hinbekommen.
Die Funktion ist absolut OK - nur sobald ich den Blattschutz einschalte kommt es zur Fehlermeldung.
Lösbar?
Auch sollte beim Druck die Farbe der Zelle ignoriert werden.
Gruß
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 13:10:10
Hajo_Zi
Hallo Joachim,
schaue mal auf meine Homepage da sind zwei Beispiele auf der Seite VBA.
Link zur Datei

AW: Ausgewälte Zelle - farbig?
21.01.2006 13:48:25
Joachim
Hi,
ja dein Beispiel -zelle_markieren_mehrere_register_abschalten.xls-
ist genau das was ich suche. nur es MUSS in geschützten Tabellen/Mappen laufen.
Gruß
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 14:35:01
Dieter
Hi,
Schutz mit UserInterfaceOnly setzen.
mfg Dieter
AW: Ausgewälte Zelle - farbig?
21.01.2006 15:18:40
Joachim
Hallo,
ich habe keine Ahnung von VBA - wo schreibe ich diesen Befehl hin?
Ich habe folgenden Code eingesetzt:

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Static Zelle As Range
If Not Zelle Is Nothing Then
Cells.Interior.ColorIndex = xlColorIndexNone
End If
Target.Interior.ColorIndex = 4 ' Grün
Set Zelle = Target
End Sub

Gruß
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 15:54:46
Hajo_Zi
Hallo Joachim
im Code steht ' Unprotec und ' Protect. Entferne das ' falls du noch Passwort hast schreibe dahinter ("Passwor")
Gruß Hajo
AW: Ausgewälte Zelle - farbig?
21.01.2006 16:15:17
Joachim
Bingo - das war es ...
Vielen Dank.
Tabelle geschützt - Mappe geschützt - Zelle farbig - Genau das wollte ich.
Jetzt noch zwei (ich hoffe) Kleinigkeiten.
Wenn die Zelle markiert ist bekomme ich im Ausdruck auch die Farbe zu sehen (oder grau).
Kann man das auch noch unterbinden?
Wie schütze ich das Makro -Denn da stehen ja die Passwörter drin- so, dass Niemand ;-) die Tabelle und das Makro verändern kann?
----------------------
Kann ich der Seite mit Hilfe des Makro auch Druckoptionen mit auf den Weg geben?
Soll heißen Querformat 1 Seite Horizontal und Vertikal zentriert.
Gruß
Joachim
AW: Ausgewälte Zelle - farbig?
21.01.2006 16:26:52
Hajo_Zi
Hallo Joachim,
das mit dem Drucken kann ich nicht nachvollziehen. Bei mir wird das Fadenkreuz entfernt zum Drucken. Ich benutze Versdion 2003.
In Excel ist nichts sicher.
Gehe in VBA Editor (Alt+F11), gehe auf Deine Datei, rechte Maustaste Eigenschaften Passwort aber merken.
zu 3 ja. Warum muß das immer wieder gemacht werden? Das stellst Du doch einmal ein. Zeichne mal den Code mit Makrorecorder auf und füge ihn in DieseArbeitsmappe unter

Private Sub Workbook_BeforePrint(Cancel As Boolean) vor End Sub
ein.
Gruß Hajo
AW: Ausgewälte Zelle - farbig?
21.01.2006 16:53:55
Joachim
Hi,
hierbei dachte ich nur daran, wenn ich die Tabelle weitergebe, dass dann
die Druckformtierung richtig eigestellt ist.
Aber man könnte dies wirklich lassen... Recht hast du. Zuviel ist auch nicht gut.
Allen vielen Dank für die große Hilfe.
Grüsse aus Düsseldorf
Joachim

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige