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

Code vereinfachen

Code vereinfachen
02.11.2005 12:54:22
Josef
Hallo ihr Excel Gurus,
ich wollte wissen, ob man folgenden Code nicht vereinfachen kann?

Private Sub Worksheet_Change(ByVal Target As Range)
Dim cell As Range
For Each cell In Range("M9:M10000")
'-----------------------------------------------------38
If cell.Value = "Booker 1" Then
cell.Select
ActiveCell.Offset(0, -4).Select
ActiveCell.Interior.ColorIndex = 33
ActiveCell.Offset(0, -1).Select
ActiveCell.Interior.ColorIndex = 33
ActiveCell.Offset(0, -1).Select
ActiveCell.Interior.ColorIndex = 33
ActiveCell.Offset(0, -1).Select
ActiveCell.Interior.ColorIndex = 33
ActiveCell.Offset(0, -1).Select
ActiveCell.Interior.ColorIndex = 33
ActiveCell.Offset(0, -1).Select
ActiveCell.Interior.ColorIndex = 33
ActiveCell.Offset(0, -1).Select
ActiveCell.Interior.ColorIndex = 33
ActiveCell.Offset(0, -1).Select
ActiveCell.Interior.ColorIndex = 33
ActiveCell.Offset(0, -1).Select
ActiveCell.Interior.ColorIndex = 33
'-----------------------------------------------------34
End If
Next cell
End Sub

Im Prinzip soll ja nur die aktive Zelle der Ausgang sein, um die Zellen Ax:Ix auszuwählen. Hoffe der Code ist soweit selbsterklärend.
Vielen Dank
Josef

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code vereinfachen
02.11.2005 13:06:41
Matthias
Hallo josef,
kannst du das nicht auch mit bedingter Formatierung machen?
Ansonsten:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim cell As Range, ber As Range
Set ber = Intersect(Target, Range("M9:M10000"))
If Not ber Is Nothing Then
For Each cell In ber
If cell.Value = "Booker 1" Then
Range(cell.Offset(0, -12), cell.Offset(0, -4)).Interior.ColorIndex = 33
Else
Range(cell.Offset(0, -12), cell.Offset(0, -4)).Interior.ColorIndex = xlNone
End If
Next cell
End If
End Sub

Gruß Matthias
AW: Code vereinfachen
02.11.2005 13:15:22
Josef
Hallo Matthias,
vielen Dank für die schnelle Rückantwort. Echt genial der Code. :-)
Ich kann es leider nicht mit bedingter Formatierung machen, da es 5 Farben werden sollen.
Grüsse
Josef
Anzeige
AW: Code vereinfachen
02.11.2005 13:15:58
StingerMKO
Hallo,
du könnest es auch mit einer zwei Variablen machen:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim cell As Range
For Each cell In Range("M9:M10000")
'-----------------------------------------------------38
If cell.Value = "Booker 1" Then
cell.Select
row_ = ActiveCell.Row
column_ = ActiveCell.Column
Range(Cells(row_, column_ - 4), Cells(row_, column_ - 13)).Select
With Selection.Interior
.ColorIndex = 33
End With
'-----------------------------------------------------34
End If
Next cell
End Sub

Gruß,
Malte
AW: Code vereinfachen
02.11.2005 13:32:27
Josef
Hi Malte,
vielen Dank für Deinen Ansatz. Ich hatte aber dann schon Matthias Code genommen.
Grüsse
JOsef
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige