Anzeige
Archiv - Navigation
792to796
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
792to796
792to796
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makrobefehl verkürzen

Makrobefehl verkürzen
24.08.2006 12: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

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

Betreff
Datum
Anwender
Anzeige
AW: Makrobefehl verkürzen
24.08.2006 12: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
AW: Makrobefehl verkürzen
24.08.2006 13:06:52
Karsten
Hallo Matthias,
Danke! Das sieht so wirklich schon besser aus.
Gruß
Karsten
AW: Makrobefehl verkürzen
24.08.2006 13:14:31
Karsten
Hallo Matthias,
Ich war bisschen voreilig.
Du hast die Unterschiede übersehen. "Key." und "Blfl." haben jeweils eine andere Farbe.
Gruß
Karsten
Anzeige
AW: Makrobefehl verkürzen
24.08.2006 13: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 13:43:07
Karsten
Hallo Matthias,
Klappt, nochmal Danke.
Gruß Karsten
AW: Makrobefehl verkürzen
24.08.2006 13: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 13:43:12
Karsten
Hallo c0bRa,
Besten Dank, ich habe aber die "Schablone" von Matthias genommen.
Gruß
Karsten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige