Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Makrobefehl verkürzen

Forumthread: Makrobefehl verkürzen

Makrobefehl verkürzen
24.08.2006 14:49:56
Karsten
Hallo...
kann man untenstehenden Befehl kürzer machen?
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Key." Then
With Zelle_in_der_Schleife.Offset(0, 0).Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Key." Then
With Zelle_in_der_Schleife.Offset(0, 1).Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Key." Then
With Zelle_in_der_Schleife.Offset(0, 2).Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Key." Then
With Zelle_in_der_Schleife.Offset(-1, 0).Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Key." Then
With Zelle_in_der_Schleife.Offset(-1, 1).Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Key." Then
With Zelle_in_der_Schleife.Offset(-1, 2).Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Blfl." Then
With Zelle_in_der_Schleife.Offset(0, 0).Interior
.ColorIndex = 34
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Blfl." Then
With Zelle_in_der_Schleife.Offset(0, 1).Interior
.ColorIndex = 34
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Blfl." Then
With Zelle_in_der_Schleife.Offset(0, 2).Interior
.ColorIndex = 34
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Blfl." Then
With Zelle_in_der_Schleife.Offset(-1, 0).Interior
.ColorIndex = 34
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Blfl." Then
With Zelle_in_der_Schleife.Offset(-1, 1).Interior
.ColorIndex = 34
.Pattern = xlSolid
End With
End If
Next
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Blfl." Then
With Zelle_in_der_Schleife.Offset(-1, 2).Interior
.ColorIndex = 34
.Pattern = xlSolid
End With
End If
Next
Wiedermal besten Dank für Eure Hilfe
MfG
Karsten
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makrobefehl verkürzen
24.08.2006 14:59:36
Matthias
Hallo Karsten,
indem du den Bereich als Ganzes ein Muster verleihst:

Sub test()
Dim Zelle_in_der_Schleife As Range
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Blfl." Or Zelle_in_der_Schleife.Value = "Key." Then
With Range(Zelle_in_der_Schleife.Offset(-1, 0), Zelle_in_der_Schleife.Offset(0, 2)).Interior
.ColorIndex = 34
.Pattern = xlSolid
End With
End If
Next
End Sub

Gruß Matthias
Anzeige
AW: Makrobefehl verkürzen
24.08.2006 15:06:52
Karsten
Hallo Matthias,
Danke! Das sieht so wirklich schon besser aus.
Gruß
Karsten
AW: Makrobefehl verkürzen
24.08.2006 15:14:31
Karsten
Hallo Matthias,
Ich war bisschen voreilig.
Du hast die Unterschiede übersehen. "Key." und "Blfl." haben jeweils eine andere Farbe.
Gruß
Karsten
AW: Makrobefehl verkürzen
24.08.2006 15:18:07
Matthias
Hallo Karsten,
stimmt, das habe ich ganz übersehen:

Sub test()
Dim Zelle_in_der_Schleife As Range
For Each Zelle_in_der_Schleife In Range("A1:O35")
If Zelle_in_der_Schleife.Value = "Key." Then
With Range(Zelle_in_der_Schleife.Offset(-1, 0), Zelle_in_der_Schleife.Offset(0, 2)).Interior
.ColorIndex = 36
.Pattern = xlSolid
End With
End If
If Zelle_in_der_Schleife.Value = "Blfl." Then
With Range(Zelle_in_der_Schleife.Offset(-1, 0), Zelle_in_der_Schleife.Offset(0, 2)).Interior
.ColorIndex = 34
.Pattern = xlSolid
End With
End If
Next
End Sub

Gruß Matthias
Anzeige
AW: Makrobefehl verkürzen
24.08.2006 15:43:07
Karsten
Hallo Matthias,
Klappt, nochmal Danke.
Gruß Karsten
AW: Makrobefehl verkürzen
24.08.2006 15:09:30
c0bRa
Hio...
Mal abgesehen dass der Code bei mir einfach mal garnix macht.
Tabelle1:
Option Explicit
Sub test()
    Dim Zelle_in_der_Schleife As Range
    For Each Zelle_in_der_Schleife In Range("A1:O35")
        If Zelle_in_der_Schleife.Value = "Key." Then
            With Range(Zelle_in_der_Schleife.Offset(0, 0), Zelle_in_der_Schleife.Offset(0, 2)).Interior
                .ColorIndex = 36
                .Pattern = xlSolid
            End With
            With Range(Zelle_in_der_Schleife.Offset(-1, 0), Zelle_in_der_Schleife.Offset(-1, 2)).Interior
                .ColorIndex = 36
                .Pattern = xlSolid
            End With
        End If
        If Zelle_in_der_Schleife.Value = "Blfl." Then
            With Range(Zelle_in_der_Schleife.Offset(0, 0), Zelle_in_der_Schleife.Offset(0, 2)).Interior
                .ColorIndex = 34
                .Pattern = xlSolid
            End With
            With Range(Zelle_in_der_Schleife.Offset(-1, 0), Zelle_in_der_Schleife.Offset(-1, 2)).Interior
                .ColorIndex = 34
                .Pattern = xlSolid
            End With
        End If
    Next
End Sub

Rückmeldung nicht vergessen...
c0bRa
I hacked 127.0.0.1
Anzeige
AW: Makrobefehl verkürzen
24.08.2006 15:43:12
Karsten
Hallo c0bRa,
Besten Dank, ich habe aber die "Schablone" von Matthias genommen.
Gruß
Karsten
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18