Können Exce-Zellen blinken?
Es gibt in einer Tabelle mit leere Zellen und Zellen mit Zahlen, diese können farblich unterlegt sein. Kann Excel, Zellen mit Zahlen, die nicht farblich untelegt sind z. B. durch blinken oder auch anders, ständig auf sich aufmerksam machen - wenn ja - wie ???? Vielen Dank für eine Antwort!! H.H.
3 Antworten
ich hoffe, die Anweisungen sind ausreichend verständlich und ausreichend genau:
Voraussetzungen schaffen:beliebigen Bereich auswählen, in Adresszeile als "Zellgruppe" benennen.
Menü "Einfügen", Textfeld einfügen. beschriften (zB. 1.: Zellen zu Bereich Zellgruppe zuordnen). FormatierungsVorschlag: FüllFarbe gelbgrün, Schrift Arial Rounded MT bold Gr.12
Zweites Textfeld einfügen, beschriften (vorläufig) mit Blinken = Ja, andere Füllfarbe(rosa?) (wird im Makro zu ActiveSheet.Shapes.Range(Array("TextBox 2"))
drittes Textfeld einfügen, beschriften mit zB "Startknopf blinken+HiGr/Font für Zellgruppe". Füllfarbe zB.hellgrün(=los gehts)
Ggf noch Rahmenfarbe, -Stärke, Schatten, Schriftstil gestalten. Nachträgliche Änderungen sind möglich, aber etwas aufwändiger, v. a. für Anfänger.
Alt+F11 öffnet den VBA-Editor
Menü EINFÜGEN, Modul fügt ein Modulblatt ein (die Module der Blattnamen und deren übergeordnetes Modul Workbook ignorierst Du vorläufig
Codetext hier kopieren (zB auch mit Strg+c), in das neu angelegte Modulblatt reinkopieren (ein ggf doppeltes Option.explicit kann (muss?) gelöscht werden.
Option Explicit: Public Blinken As Boolean 'ganz wichtig: nicht Dim, sondern Public, damit zwischen Aufrufen erhalten bleibt! (ResourcenAktualisierung)
Sub ZellGruppeBenennen() '1/4 die folgenden 4/4 Makros gehören zusammen
Dim KombiSel
Set KombiSel = Selection
ActiveWorkbook.Names("Zellgruppe").RefersToR1C1 = KombiSel
End Sub
Sub Blinkenbeenden() '2/4
If Blinken = False Then Blinken = True: Knopftext: Exit Sub
Blinken = False: Knopftext
End Sub
Sub Knopftext() '3/4
ActiveSheet.Shapes.Range(Array("TextBox 2")).Select
Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "BLINKEN = " & UCase(Blinken) ': Debug.Print Blinken 'ginge das einfacher?
End Sub
Sub xblinkenZellHiGru() '4/4
If Range("Zellgruppe").Cells(1).Interior.ColorIndex = 3 Then
Range("Zellgruppe").Cells.Interior.ColorIndex = 6: Range("Zellgruppe").Cells.Font.ColorIndex = 1
Else
Range("Zellgruppe").Cells.Interior.ColorIndex = 3: Range("Zellgruppe").Cells.Font.ColorIndex = 4
End If: Debug.Print Blinken
If Blinken = False Then Exit Sub
Application.OnTime Now + TimeSerial(0, 0, 1), "xblinkenZellHiGru"
End Sub 'weiterentwickelt aus Vorlage Jörg Lorenz: lorenz@joerglorenz.de http://www.spotlight.de/ewf-faq http://www.joerglorenz.de
(und damit zu Schaltknöpfen machen)
auf Kontext-Menü des ersten Textfelds klicken, Makro zuweisen wählen. Makro ZellGruppeBenennen auswählen (wird ggf samt Dateiname angegeben, egal)
auf Kontext-Menü des zweiten Textfelds klicken, Makro zuweisen wählen. Makro Blinkenbeenden auswählen
auf Kontext-Menü des dritten Textfelds klicken, Makro zuweisen wählen. Makro xblinkenZellHiGru auswählen
mehrere Zellen mit ständig gedrückter Strg-Taste markieren (diejenigen, die blinken sollen). Knopf Zellen zu Bereich Zellgruppe zuordnen drücken.
Erfolgskontrolle: andere Zellen auswählen. Im Adressfeld den Bereich Zellgruppe wählen: er muss die vorher markierten Zellen auswählen.
Knopf Blinken=Ja drücken: er sollte sich auf BLINKEN = WAHR stellen. Ggf erneut irgendeine andere Zelle auswählen, Knopf drücken: sollte alternierend WAHR und FALSCH zeigen.
Erst jetzt den Hauptknopf (Startknopf blinken...) drücken: die vorher gewählten Zellen sollten im Sekundentakt blinken.
Abbrechen mit Knopf Blinken, dieser zeigt dann ...FALSCH. In diesem Zustand können die Farben durch den Startknopf manuell gesteuert umgestellt werden, bei jedem Knopfdruck erneut.
Der Blinkvorgang erlischt, wenn das Arbeitsblatt, die Datei oder die Anwendung xl verlassen wird.
Zum Wiederingangsetzen brauchen die Zellen nicht neu ausgewählt zu werden(der Kombi-Bereich bleibt erhalten), aber die Anzeige Blinken = WAHR stimmt evtl nicht mehr. Knopf (evtl doppelt) umstellen wieder auf WAHR, dann Startknopf.
Das Wiederingangsetzen könnte durch ein Ereignis-Makro geschehen (Worksheet_activate()), aber das lasse ich jetzt erst mal. Ggf nachfordern.
Danke für Stern und Kompliment! Was ich dem aber nicht entnehmen kann: Hast Du es zum Laufen(Blinken) gekriegt oder hast du mit dem Verweis auf Anfänger kapituliert? Wäre schade, aber bei mir hat sich beim ersten Mal gar nichts getan, ich musste im Makro die Textfeldnummer ändern, weiss selbst noch nicht, warum sich das geändert hat!
Ich helfe dir gerne weiter, wenn ich kann! (ggf auch auf nichtöffentlichem Weg über zeitlich befristete Freundschaft)
also ich hab vor langer Zeit mal was aus dem Netz gezogen, was ein Labelfeld (Label1) in einer Useform1 zum Blinken bringt und geb das mal hier wieder:
Dim c
Sub zeigen()
c = True
ändern
UserForm1.Show
End Sub
Sub ändern()
If UserForm1.Label1.BackColor = &H8000000F Then UserForm1.Label1.BackColor = &H8080FF Else UserForm1.Label1.BackColor = &H8000000F
If c = True Then Application.OnTime Now + TimeSerial(0, 0, 1), "ändern"
End Sub
Sub entladen()
c = False
Unload UserForm1
End Sub
beachte: beide if sind die einzeilige Variante, die kein end if braucht. Der Zeilenumbruch nach then ist (ggf) nur durch die Darstellung hier vorgetäuscht
ich werde später noch nach weiterem suchen, ich meine, ich müsste noch was für Zellen haben..
Vielen Dank für die schnelle Antwort,aber zum Verstehen bin ich zu laienhaft.:-)
ich hab das zwar eben fertig funktionsfähig ausgearbeitet, aber es bleibt kompliziert zum erklären, leichter zum Installieren.
Du kannst schon mal einen Bereich namens Zellgruppe einrichten und drei Textfelder einfügen (aber die Reihenfolge merken, sonst könnte es schwierig werden, die später anzusprechen, also am besten untereinander (später kannst Du die dann beliebig verschieben)
Dem Bereich weist Du erst mal nur eine Zelle zu, kann später auf beliebig viele Einzelzellen und/oder Zellbereiche ausgedehnt werden, die dann alle einen Hintergrund-Farbwechsel rot<->gelb ausführen, ebenso einen Schriftfarbwechsel hellgrün(vor Rot)<->schwarz(vor gelb) (beliebig einstellbar)
Der letzte Rest dann morgen.
[in Hamburg lebten zwei Ameisen, die wollten nach Australien reisen
In Altona, auf der Chaussee, da taten ihnen die Beine weh
und so verzichteten sie weise auf den letzten Rest der Reise...
J. Ringelnatz]
Hallo Harald,
ein wenig Google hätte dir auch schon eine Antwort gebracht. Daher will ich jetzt auch mal faul sein und verweise auf: http://www.office-loesung.de/ftopic286449_0_0_asc.php
Schau dir da mal den Eintrag 4 (von Nepumuk) an. Ist von ihm recht recht gut und simpel erklärt.
LG, Chris
noch ganz wichtig: Datei entweder im alten Format als :xls oder im neuen als .xlsm speichern, sonst verlierst du die mühsam zusammengetragene Arbeit größtenteils wieder!
Sollte was nicht gehen, bei VBA-Fehlermeldung >Nr notieren, auf debuggen gehen uns festhalten, welche Zeile betroffen ist. hier alles schreiben!