Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1264to1268
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
Inhaltsverzeichnis

Makro - Fehler abfangen

Makro - Fehler abfangen
lutz
Hallo Excel-Spezialisten,
ich habe gestern mit Hilfe des Forums ein Makro erstellt und habe jetzt das Problem, dass das Makro bei fehlenden Werten abbricht. (Autofilter)
Hier das Makro:
Public Sub Aendern_MatPlatz()
Dim Zellchen As Range
Dim AendBereich As Range
Dim AendZeilen As Long
Dim AendWert
Dim AendKrit As String
Dim I
Dim DatenBereich As Range
Dim GefilterterBereich As Range
Sheets("Daten").Select
Sheets("Daten").AutoFilterMode = False
'If Range("A1") > "" Then Range("1:1").Insert
Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
Set DatenBereich = Range(Selection, ActiveCell.SpecialCells(xlLastCell))
DatenBereich.AutoFilter
AendZeilen = Sheets("Aendern").Range("A" & Sheets("Aendern").Rows.Count).End(xlUp).Row
For I = 2 To AendZeilen
AendKrit = Sheets("Aendern").Range("A" & I).Text
AendWert = Sheets("Aendern").Range("B" & I).Value
DatenBereich.AutoFilter Field:=42, Criteria1:=AendKrit
Set GefilterterBereich = Intersect(Range("F2:F" & Rows.Count), DatenBereich.SpecialCells( _
xlCellTypeVisible))
For Each Zellchen In GefilterterBereich.Cells
Zellchen.Offset(0, 37) = AendWert
Next
Next
End Sub
Das geht auch ganz prima aber wenn er nichtf filtert dann bricht er bei
For Each Zellchen In GefilterterBereich.Cells
ab.
D.h. man müßte wohl etwas einbauen, dass er bei leerem "GefilterterBereich" zum nächsten geht.
Kann jemand Helfen?
Vielen lieben Dank und Gruß Lutz

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

Betreff
Benutzer
Anzeige
AW: Makro - Fehler abfangen
31.05.2012 10:26:31
guentherh
Hallo Lutz,
gehe ich recht in der Annahme, dass in der Zeile
For Each Zellchen In GefilterterBereich.Cells

Der Fehler "Objekt erforderlich kommt?
Gruß,
Günther
AW: Makro - Fehler abfangen
31.05.2012 10:32:06
lutz
Hallo Günther,
vielen Dank für die Antwort.
Hier steigt er aus:
For Each Zellchen In GefilterterBereich.Cells
Fehler 91, Laufzeitvariable oder Blockvariable nicht festgelegt
Viele Grüße Lutz
AW: Makro - Fehler abfangen
31.05.2012 10:42:22
guentherh
Das kann man mit
if not( GefilterterBereich is nothing) then
For Each Zellchen In GefilterterBereich.Cells
Zellchen.Offset(0, 37) = AendWert
Next
end if

abfangen
Anzeige
AW: Makro - Fehler abfangen
31.05.2012 10:49:11
lutz
Hallo Günther
paßt zu 100 %
Ich hatte es selber schon probiert - hatte aber keine Klammern um das Gefilterter Bereich is nothing und das End If vor das next gesetzt.
Ich hoffe, ich lerne das nochmal...
Vielen lieben Dank und noch einen schönen Tag für Dich,
viele Grüße Lutz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige