Excel - durch ein Makro aktive Zelle färben?

2 Antworten

Ich bin mir nicht sicher, jedoch denke ich, dass du das genau so auch mit "Bedingte Formatierung" realisieren könntest.

Beispiel: wenn in Zelle A10 Wert kleiner/gleich O ist dann Farbe rot.

Option Explicit

Dim rngVorher As Range
Dim colVorher As Integer

Private Sub Worksheet_Deactivate()
If Not rngVorher Is Nothing Then rngVorher.Interior.ColorIndex = colVorher
Set rngVorher = Nothing
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Not rngVorher Is Nothing Then rngVorher.Interior.ColorIndex = colVorher
colVorher = Target.Interior.ColorIndex
Target.Interior.ColorIndex = 6 'Hintergrund Gelb
Set rngVorher = Target
End Sub

Quelle: http://www.office-loesung.de/ftopic11718_0_0_asc.php

Habe es eben unter Excel 2013 getestet, funktioniert einwandfrei.

Wie hast du es denn in das Modul eingefügt?

Wenn ich es einfüge, Speicher und es dann im Excel ausführen will dann kommt einfach nichts :(

Entweder füge ich es komplett falsch ein (was aber nicht sein kann denn andere Makros funktionieren)

Oder kann es vlt daran liegen, dass ich mehrere Tabellen in der Datei habe?

0
@Johannes9519

Das muss jeweiligen Tabellenblatt abgelegt werden, nicht in ein Modul

1
@Johannes9519

Wie Ninombre richtig schreibt, muss das ins Tabellenblatt.

Reiter Entwicklertools ->  Visual Basic -> Container Microsoft Excel Objekte aufklappen -> Doppelklick auf eine Tabelle -> Strg + V

Das musst du dann leider für jede Tabelle machen.

1
@Hyp3rn0v4

Habe es gefunden SUPER!

Jetzt noch die Frage. Wenn ich die Liste abspeicher und schließe dann bleibt die Farbe leider erhalten. Gibt es eine Möglichkeit das zu Verhindern?

0
@Johannes9519

Wenn du folgendes in DieseArbeitsmappe kopierst (nicht in eine der Tabellen) werden alle aktuell markierten Zellen wieder auf "Keine Füllfarbe" gesetzt, wenn du Excel schließt.
Wenn du in deiner Tabelle vorher schon eine Füllfarbe hattest und die wiederhergestellt brauchst, muss ich mir noch etwas überlegen.



Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim sht As Worksheet, csheet As Worksheet
Application.ScreenUpdating = False
Set csheet = ActiveSheet
For Each sht In ActiveWorkbook.Worksheets
If sht.Visible Then
ActiveCell.Interior.ColorIndex = 0
End If
Next sht
csheet.Activate
Application.ScreenUpdating = True
End Sub
0

Excel 2010. wenn zelle farbe, dann andere zelle farbe

Hallo, ich bin gerade am rumprobieren mit excel. ich habe einen kalender erstellt und die bedingte formatierung genutzt (=WOCHENTAG(C7;2)>5 usw.) um die wochenenden gelb zu markieren. jetzt möchte ich die zellen (unterschiedlich viele) unter den gelb markierten wochenenden ebenfalls gelb haben. das kann ich natürlich einfach einfärben, aber da sich die wochenenden jedes jahr verschieben müsste sich die farbe mit verschieben. ich dachte da an sowas wie diese Wenn formel ( wenn zelle A1 gelb dann ausgewählte zelle auch gelb) könnt ihr mir helfen?

...zur Frage

Excel: Tabellenblatt per Makro kopieren und umbenennen?

Hallo nochmal

Ich habe vorhin bereits eine ähnliche Frage gestellt. Jetzt hat sich eine weitere Frage ergeben. Ich habe ein Excelfile mit 2 Tabellenblättern (Inhalt und Template). Beim Ausführen eines Makros auf der Seite "Inhalt" soll nun folgendes geschehen:

Tabellenblatt "Template" wird kopiert. Dieses neue Blatt wird nach dem Inhalt der Zelle C8 des Tabellenblatts "Inhalt" benannt.

Wäre super, wenn mir jemand ein VBA dazu machen könnte :) Vielen Dank im Voraus!

...zur Frage

Excel Makros "kopierfunktion"

Guten Tag

Ich möchte eine Funktion schreiben, also Makro, fürs Excel. Diese soll bei Klick auf eine Zelle den Zellinhalt in den Zwischenspeicher schreiben. Gibt es einen ActionListener oder Event der genau das sagt also Klick auf eine jede Zelle.

(opptional beim nächsten Klick den Inhalt einfügen.)

...zur Frage

Wie kann man mit einen Makro Ordner öffnen und dann die CSV-Dateil auswählen die im Zelle A1 geöffnet wird?

Hallo,

Ich brauche ein Makro mit dem ich einen Ordner öffnen, dort eine beliebige CSV-Datei auswählen kann und diese sich dann in der Zelle A1 öffnet.

bisher habe ich das im Netz gefunden:

Sub Weekly_Flash()

ChDir "C:\Users\Manuel\Downloads"

Call Application.Dialogs(xlDialogOpen).Show

End Sub

Dieses Makro öffnet meinen Ordner, alerdings öffnet es die CSV datei in einer neuen Excel-Datei und nicht in der Zelle A1.

Ich kenne mich leider gar nicht mit VBA aus. :/ Habe nur im Internet immer wieder Makros eingefügt und geguckt was passiert und meinen Pfad angegeben :D

...zur Frage

Wie lässt sich in Excel eine Zelle, aufgrund einer Änderung durch ein Makro, einfärben?

Hey Community,

ich habe in Excel ein Makro eingerichtet, welches einen Wert in einer Zelle ändert. Nun möchte ich, aufgrund dieser Änderung, automatisch über ein weiteres Makro im Worksheet Zellen einfärben.

Was ich bereits versucht habe war, die Worksheet_Change Funktion zu verwenden, doch scheint es mir, als ob dies nur funktioniert, wenn man manuell die Zelleninhalte ändert.

Wisst ihr einen anderen Weg, oder wo mein Fehler liegt?

Danke im voraus!

Gruß, AndrijaG

...zur Frage

Was möchtest Du wissen?