Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
436to440
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
436to440
436to440
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zahlen in Excel durch Farbe ersetzen!!

Zahlen in Excel durch Farbe ersetzen!!
06.06.2004 16:05:22
Newbee
Hallo,
hab nen Problem. Ich habe ne ziemlich umfangreiche Excel-Tabelle mit Zahlen von 1 bis 7. Nun soll ich diese Zahlen in Gruppen zusammenfassen( d.h. jeder Zahl (1,2,3,..,7) ne Farbe geben.
Leidre hab ich keinen Schimmer wie das geht.Wenn'S möglich ist, vielleicht nen Schritt für Schritt Erklärung.
Danke schon mal im Voraus.

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zahlen in Excel durch Farbe ersetzen!!
06.06.2004 16:29:24
Josef Ehrensberger
Hallo

Erstens, schau mal hier!
https://www.herber.de/forum/archiv/404to408/t407829.htm#407838
Zu deiner Frage.
Öffne den VBA-Editor (Alt+F11).
Gehe auf > Einfügen > Modul, und kopiere in das
rechte Fenster diesen Code.
Option Explicit

Sub Zellen_Faerben()
'Alle Zellen, im aktiven Tabellenblatt,
'die Zahlen zwischen 1 und 7 enthalten verschieden einfärben
Dim rng As Range
For Each rng In ActiveSheet.Cells.SpecialCells(xlCellTypeConstants, 1)
With rng
Select Case .Value
Case 1
.Interior.ColorIndex = 3
Case 2
.Interior.ColorIndex = 4
Case 3
.Interior.ColorIndex = 5
Case 4
.Interior.ColorIndex = 6
Case 5
.Interior.ColorIndex = 7
Case 6
.Interior.ColorIndex = 8
Case 7
.Interior.ColorIndex = 10
Case Else
.Interior.ColorIndex = xlNone
End Select
End With
Next
End Sub

Code eingefügt mit: Excel Code Jeanie
Gruß Sepp
Anzeige
AW: Zahlen in Excel durch Farbe ersetzen!!
06.06.2004 16:39:52
K.Rola
Hallo,
eine Möglichkeit:
Option Explicit

Sub Farben()
Dim c As Range, arr, z As Byte
arr = Array(1, 2, 3, 4, 5, 6, 7)
For Each c In Cells.SpecialCells(xlCellTypeConstants, 1)
For z = 0 To 6
If c = z Then c.Interior.ColorIndex = z + 2
Next
Next
End Sub

Gruß K.Rola
@ Josef Ehrensberger u. K.Rola und Andere
06.06.2004 16:49:43
Newbee
Sorry aber ich versteh bloß Bahnhof;-(
@Josef Ehrensberger
Wenn ich in VBA die Daten reinkopiert habe, wie gehts dann weiter?
Ich muss doch sicher jeder Zahl ne Farbmarkierung geben, bzw. die Farbe definieren. Wie geht das?
Sorry, hab wirklich keine Ahnung
Anzeige
AW: @ Josef Ehrensberger u. K.Rola und Andere
06.06.2004 16:57:56
Josef Ehrensberger
Hallo ?
Der erste Hinweis sollte dich auf die Form deiner Frage hinweisen!(Name, Gruß, ect...)
Zum Problem.
Du kannst den Code direkt im VBA-Editor durch drücken von F5 starten!
Alternativ kannst du auch einen Button auf der Tabelle plazieren
und diesem das Makro zuordnen(Ansicht > Symbolleisten > Formular)
Button anklicken und auf der Tabelle platzieren, rechtsklick auf
den Button > Makro zuweisen > das Makro auswählen > OK.
Mit diesem Code, kannst du dir die Farben und die dazugehörigen
Indexnummern ausgeben lassen. Verwende dazu ein leeres Tabellenblatt!
Sub Farb_Index()
Dim intC As Integer
For intC = 1 To 56
Cells(intC, 1).Interior.ColorIndex = intC
Cells(intC, 2) = intC
Next
Gruß Sepp
Anzeige
AW: Frage an K.Rola
06.06.2004 17:23:37
Martin Beck
Hallo K.Rola,
wozu wird die Zeile
arr = Array(1, 2, 3, 4, 5, 6, 7)
benötigt? Und sollte die Schleife nicht von 1 to 7 laufen?
Gruß
Martin Beck
AW: Frage an K.Rola
06.06.2004 18:00:13
K.Rola
Hallo,
arr = Array(1, 2, 3, 4, 5, 6, 7) sind die gesuchten Zahlen, der Index
des Arrays beginnt bei 0 (es sei denn, man wählt Option Base 1), daher
For z = 0 to 6
Gruß K.Rola
AW: Frage an K.Rola
06.06.2004 21:28:27
Martin Beck
Hallo K.Rola,
die Logik eines Arrays ist mir schon klar. Meine Frage zielte darauf ab, daß Du in der Schleife den Array gar nicht ansprichst. Der Code liefer ohne die Zeile arr = ... das gleiche Ergebnis wie mit. Da ich Deine Kenntnisse sehr hoch einschätze, wollte ich wissen, ob sich darin ein Trick verbirgt, der mir entgangen ist.
Gruß
Martin Beck
Anzeige
AW: Frage an K.Rola
06.06.2004 22:17:47
K.Rola
Hallo,
du hast völlig Recht, mein Irrtum, muss natürlich so sein:

Sub Farben()
Dim c As Range, arr, z As Byte
arr = Array(1, 2, 3, 4, 5, 6, 7)
For Each c In Cells.SpecialCells(xlCellTypeConstants, 1)
For z = 0 To 6
If c = arr(z) Then c.Interior.ColorIndex = z + 2
Next
Next
End Sub

Gruß K.Rola
AW: Aller klar (oT)
06.06.2004 22:30:52
Martin Beck

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige