Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
900to904
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
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA - Frage - Makro wiederholen ?

VBA - Frage - Makro wiederholen ?
28.08.2007 18:23:00
Selma
Hallo Leute,
ich habe eine Frage.
Mit dem Makro "FilePruefung_Hyperlink" wird für markierten Zeilenbereich (Markierung der Zeilen erfolgt durch das Makro "Markieren_bis_Graue_Zelle") über Hyperlink-Adresse geprüft, ob die Hyperlink-Dateien auf der Festplatte existieren.
Fehlende Dateien werden mit Farbe 22 eingefärbt. Soweit gut.
Ich möchte gern, dass das Makro "FilePruefung_Hyperlink" die Prüfung für die nächsten Zeilenbereich wie folgt fortsetzt. Wenn das Makro "FilePruefung_Hyperlink mit der Prüfung fertig ist, soll die Zeile mit der Farbe 15 (bezogen auf Spalte A) übersprungen werden und dann nochmal die Prüfung für nächsten Bereich durchführen.
Das Makro soll bis nächste leere Zelle der Spalte A durchlaufen.
Was muss ich ändern ?

Sub FilePruefung_Hyperlink()
Call Markieren_bis_Graue_Zelle
Dim brColor As Integer
Dim myRange As Range
For Each myRange In Selection
myRange.Interior.ColorIndex = 0
If myRange.Hyperlinks.Count > 0 Then
If Dir$(myRange.Hyperlinks(1).Address) = "" Then
myRange.Interior.ColorIndex = 22
brColor = brColor + 1
End If
End If
Next
End Sub



Sub Markieren_bis_Graue_Zelle()
'ab aktive Zellenzeile bis die nächste Zelle (bezogen auf Spalte A)
'mit grauer Hintergrundfarbe kommt bzw. nächste leere Zelle (bezogen auf Spalte A)
'werden die Zeilen markiert.
Dim lZeile  As Long
Dim lStart  As Long
lStart = ActiveCell.Row
For lZeile = lStart To Range("A65536").End(xlUp).Row + 1
If Range("A" & lZeile).Interior.ColorIndex = 15 Or _
Range("A" & lZeile).Value = "" Then
Rows(lStart & ":" & lZeile - 1).Select
Exit For
End If
Next lZeile
End Sub


Vielen Dank im Voraus...
Liebe Grüße
Selma

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Frage - Makro wiederholen ?
01.09.2007 11:43:00
fcs
Hallo Selma,
die Prüfung der Hyperlinks in der Spalte ab der der aktiven Zelle kannst du auch in einer Do...Loop-Schleife durchführen und dabei die graue(n) Zelle(n) überspringen. Das Makro "Markieren_bis_Graue_Zelle" ist dann für die Prüfung nicht mehr erforderlich
Gruß
Franz

Sub FilePruefung_Hyperlink()
Dim brColor As Integer
Dim myRange As Range
Dim Zeile1 As Long, ZeileGrau As Long, zeileLetze As Long
Zeile1 = ActiveCell.Row
Set myRange = Cells(Zeile1, 1) 'Startzelle in Spalte A
'Prüfen bis 1. Zelle leer, graue Zelle wird übersprungen
Do Until myRange.Value = ""
If myRange.Interior.ColorIndex = 15 Then
ZeileGrau = myRange.Row
Else
myRange.Interior.ColorIndex = 0
If myRange.Hyperlinks.Count > 0 Then
If Dir$(myRange.Hyperlinks(1).Address) = "" Then
myRange.Interior.ColorIndex = 22
brColor = brColor + 1
End If
End If
End If
Set myRange = myRange.Offset(1, 0)
Loop
ZeileLetzte = myRange.Row - 1
'Zellen markieren
'eine der beiden folgenden Zeilen ist nur erforderlich, wenn einer der beiden _
geprüften Bereiche nach Ausführung des Makros selektiert sein soll
Range(Cells(Zeile1, 1), Cells(ZeileGrau - 1, 1)).Select
Range(Cells(ZeileGrau + 1, 1), Cells(ZeileLetzte, 1)).Select
End Sub


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige