Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
948to952
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
948to952
948to952
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Mehrfacheingabe formatierungen

Mehrfacheingabe formatierungen
13.02.2008 17:01:00
Matthias.G.
Hallo Excelfans,
es geht um mehrfacheingabe, besser gesagt 5 Zellen aufeinmal ,
die einzeleingabe funzt prima.
https://www.herber.de/bbs/user/49896.xls
der codei st hier gekürzt in der hochgeladenen datei natürlich nicht:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim Bedingung1 As String,  Farbe1 As String,
Bedingung1 = Range("B6")
Farbe1 = Range("B8")
If Target.Cells.Count > 1 Then Exit Sub
Select Case Target.Value
Case Bedingung1
Target.Interior.ColorIndex = Farbe1
Case Else
Target.Interior.ColorIndex = 2
End Select
End Sub


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

Betreff
Datum
Anwender
Anzeige
AW: Mehrfacheingabe formatierungen
13.02.2008 17:09:59
Renee
Hi Matthias,
so?:

Dim rC As Range
For Each rC In Target.Cells
Select Case rC.Value
Case Bedingung1
rC.Interior.ColorIndex = Farbe1
Case Bedingung2
rC.Interior.ColorIndex = Farbe2
Case Bedingung3
rC.Interior.ColorIndex = Farbe3
Case Bedingung4
rC.Interior.ColorIndex = Farbe4
Case Bedingung5
rC.Interior.ColorIndex = Farbe5
Case Bedingung6
Target.Interior.ColorIndex = Farbe6
Case Else
rC.Interior.ColorIndex = 2
End Select
Next


GreetZ Renée

AW: Mehrfacheingabe formatierungen
13.02.2008 17:36:00
Matthias.G.
Hi Rene,
leider habe ich kein glück damit , wie gesagt meine VBA Kenntnisse sind noch dünn.
vielleicht mach ich nur wieder was falsch.
kannst du mir eventuell die datei die ich hochgeladen umändern?
Danke für deine Mühe,
Gruss
Matthias

Anzeige
AW: Mehrfacheingabe formatierungen
13.02.2008 19:16:10
Renee
Hi Matthias,
Was verstehst du unter Mehrfacheingabe? Ich habe darunter verstanden, dass du eine Zelle kopierst.
Meine Codefragment ersetzt deinen Code ab Zeile (und inkl. dieser)

If target.Cellls.count > 1...


GreetZ Renée

AW: Mehrfacheingabe formatierungen
13.02.2008 19:30:04
Matthias.G.
Hui Renée,
ich meine das wenn ich zb 5 Zellen markiere und dann ein "T" schreibe und mit der Tastenkombination Strg+enter ,
damit alle 5 Zellen gleichzeitig eingebe.
kopieren funzt auch ohne VBA
Matthias

AW: Mehrfacheingabe formatierungen
13.02.2008 19:34:55
Renee
Hi Matthias,
Ja mein Code würde auch diesem Rechnung tragen.
Ersetz einfach dein Makro durch dieses:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim Bedingung1 As String, Bedingung2 As String, Bedingung3 As String, _
Bedingung4 As String, Bedingung5 As String, Bedingung6 As String, Farbe1 As String, Farbe2 As  _
String, Farbe3 As String, _
Farbe4 As String, Farbe5 As String, Farbe6 As String
Dim rc As Range
Bedingung1 = Range("B6")
Bedingung2 = Range("H6")
Bedingung3 = Range("N6")
Bedingung4 = Range("T6")
Bedingung5 = Range("Z6")
Bedingung6 = Range("AF6")
Farbe1 = Range("B8")
Farbe2 = Range("H8")
Farbe3 = Range("N8")
Farbe4 = Range("T8")
Farbe5 = Range("Z8")
Farbe6 = Range("AF8")
For Each rc In Target.Cells
Select Case rc.Value
Case Bedingung1
rc.Interior.ColorIndex = Farbe1
Case Bedingung2
rc.Interior.ColorIndex = Farbe2
Case Bedingung3
rc.Interior.ColorIndex = Farbe3
Case Bedingung4
rc.Interior.ColorIndex = Farbe4
Case Bedingung5
rc.Interior.ColorIndex = Farbe5
Case Bedingung6
Target.Interior.ColorIndex = Farbe6
Case Else
rc.Interior.ColorIndex = 2
End Select
Next
End Sub


GreetZ Renée

Anzeige
grad noch ein kleiner Fehler...
13.02.2008 19:36:00
Renee
entdeckt.

statt
Target.Interior.ColorIndex = Farbe6
muss es heissen
rC.Interior.ColorIndex = Farbe6


Renée

AW: grad noch ein kleiner Fehler...
13.02.2008 19:52:00
Matthias.G.
FETTES LOB AN DICH UND HERZLICHEN DANK !!!
Gruss Matthias

AW: grad noch eine kleine Verbesserung
13.02.2008 20:29:00
Renee
Hi Matthias,
Danke für das Lob, aber trotzdem eine kleine Kritik:
Dein Code wäre vielleicht so besser:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim rc As Range
Dim lx As Long
Dim bSet As Boolean
If Intersect(Target, Range("F11:AJ21")) Is Nothing Then Exit Sub
For Each rc In Target.Cells
For lx = 2 To 32 Step 6
If rc.Value = Cells(6, lx).Value Then
rc.Interior.ColorIndex = Cells(6, lx).Interior.ColorIndex
bSet = True
End If
Next lx
If Not (bSet) Then rc.Interior.ColorIndex = 2
Next
End Sub


1. Brauchst Du all die Variablen nicht
2. Die Farbe wird direkt aus der Farbe mit der Legendenzellen genommen (...änderbar)
3. Etwas mehr Sicherheit, da nur im Bereich der Einträge Farbe gesetzt wird
4. Kürzer....
Genug des Selbstruhms....
GreetZ Renée

Anzeige
AW: grad noch eine kleine Verbesserung
13.02.2008 22:01:16
Matthias.G.
Sauber , sauber, ich sehe zwar das es funktioniert,
aber wie und wodurch muss ich noch herraus bekommen,
auf jedenfall wird mich VBA noch eine Weile am "grübeln" lassen.
Danke nochmals...Renée
ein Hoch aufs Forum.
Gruss
Matthias

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige