Objektvariable oder With-Blockvariable nicht festgelegt (Fehler 91

01/03/2009 - 18:21 von Willy Steffen | Report spam
Hallo guten Abend NG
Ich habe eine Aenderung in einem Makro fornehmen wollen und jetzt kriege ich
den Fehler "Objektvariable oder With-Blockvariable nicht festgelegt (Fehler
91)" Ich habe herumgeübt aber es will einfach nicht gehen. Kann mir da jemand
helfen?
Hier den Code:

Sub FeiertageMarkieren()
'Wird manuell aufgerufen
'Feiertage Zeile 1 bis Zeile 4 jeweils rosa Fàrben
Dim Situation As Integer
Dim BeginnSpalte As Long, EndeSpalte
Dim JahrZeile As Long, SchlPlan, SchlFei, FeiWo, LetztFei
Dim MonatJan As String, TitFei, Farbe
Dim Abk As Object
Dim TagFei As Date

'Blattschutz etc. unterdrücken
Call Blattschutz.Blattschutz_Nein
'Benötigte Variabeln berechnen
BeginnSpalte = Cells(1, (Range("Delais").Column) + 1).Column
EndeSpalte = Cells((Range("EndeX").Row), (Range("EndeX").Column)).Column
Set Abk = ThisWorkbook.Worksheets(2)
LetztFei = 12 'Letzter Feiertag im Jahr (Total 12 pro Jahr).
Situation = 0
ActiveWorkbook.Colors(5) = RGB(255, 204, 255)
Farbe = 5 'rosa
'Kommentare Feiertage löschen
Range(Cells(Range("EndeX").Row, BeginnSpalte), _
Cells((Range("EndeX").Row), (Range("EndeX").Column))).Comment.Delete
'Anzahl Jahre 2008 - 2011
For JahrZeile = 6 To 9
'Ab erster Feiertag 2007
For SchlFei = 2 To LetztFei
'hole Feiertag in Tabelle 2 und berechne die Kalenderwoche
TagFei = Abk.Cells(JahrZeile, SchlFei).Value
FeiWo = KWJ(Abk.Cells(JahrZeile, SchlFei).Value)
TitFei = Abk.Cells(1, SchlFei).Value
'durchlaufe alle Spalten Tabelle 1
For SchlPlan = BeginnSpalte To EndeSpalte
'Situation 1 ist Feiertag und hat rosa Markierung
If Columns(SchlPlan).Interior.Color = Farbe _
And Cells(2, SchlPlan).Value = FeiWo Then _
Situation = 1
'Situation 2 ist Feiertag
If Cells(2, SchlPlan).Value = FeiWo Then _
Situation = 2
'Situation 3 hat rosa Markierung
If Columns(SchlPlan).Interior.Color = Farbe _
Then Situation = 3
'Auswahl
Select Case Situation
Case 1
'nichts machen, Kommentar korrigieren
Cells(2, SchlPlan).Comment.Clear
Range(Cells(2, SchlPlan)).Comment.Text TitFei & Date
Situation = 0
Case 2
'Feiertag rosa markieren
Range(Cells(1, SchlPlan), Cells(4, SchlPlan)) _
.Interior.ColorIndex = Farbe
'Kommentar löschen
Cells(2, SchlPlan).ClearComments
'Neuer Kommentar schreiben
Cells(2, SchlPlan).AddComment
Cells(2, SchlPlan).Comment.Text _
Text:=TitFei & Chr(10) & TagFei
Situation = 0
Case 3
'Rosa Markierung weg
Range(Cells(1, SchlPlan), Cells(4, SchlPlan)) _
.Interior.ColorIndex = xlNone
'Kommentar weg
Range(Cells(1, SchlPlan), Cells(4, SchlPlan)) _
.Comment.Delete
Situation = 0
End Select
Next
Next
Next
'Blattschutz etc. aktivieren
Call Blattschutz.Blattschutz_Ja
'Gehe zur Aktuelle Woche
Call GoToAktuelleWoche
End Sub
 

Lesen sie die antworten

#1 stefan onken
02/03/2009 - 08:57 | Warnen spam
hallo Willy,
meist fehlt mir ein End If oder End With bei der Meldung.
Auf den ersten Blick sehe ich den Fehler jedoch nicht.
Wenn die Fehlermeldung kommt, kannst du darin auf Debuggen klicken und
die den Fehler hervorrufende Zeile ist gelb unterlegt. Welche?
Wie lautet denn der Code der anderen Makros (Blattschutz_Nein , KWJ)?
Ist der Code und die Tabellen in derselben Datei?
Ich versuche in solchen Fàllen, über in den Code eingefügte MsgBoxen
oder das Direktfenster den Fehler einzugrenzen.

Gruß
stefan


On 1 Mrz., 18:21, Willy Steffen
wrote:
Hallo guten Abend NG
Ich habe eine Aenderung in einem Makro fornehmen wollen und jetzt kriege ich
den Fehler "Objektvariable oder With-Blockvariable nicht festgelegt (Fehler
91)" Ich habe herumgeübt aber es will einfach nicht gehen. Kann mir da jemand
helfen?
Hier den Code:

Ähnliche fragen