Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
664to668
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
664to668
664to668
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler im Makro

Fehler im Makro
12.09.2005 10:24:47
Urban
Hallo,
ich brauche Hilfe:
habe ein Makro geschrieben, die beim Öffnen Zellen färben soll und dann die graue Zellen sperren und weisse nicht sperren - es läuft bis "rng.Locked = True" dort zeigt es Fehler (9 Zeile vom Ende) - ich kann aber nicht finden
Danke im voraus - Joachim

Private Sub Workbook_Open()
Dim i As Integer
Dim j As Integer
i = 5
j = 9
For j1a = 1 To 3300
If Cells(i, j) <> "" Then
Cells(i, j - 4).Interior.ColorIndex = 15
End If
If Cells(i, j) <> "" Then
Cells(i, j - 3).Interior.ColorIndex = 15
End If
If Cells(i, j) <> "" Then
Cells(i, j - 2).Interior.ColorIndex = 15
End If
If Cells(i, j) <> "" Then
Cells(i, j - 1).Interior.ColorIndex = 15
End If
If Cells(i, j) = "" Then
Cells(i, j - 4).Interior.ColorIndex = 0
End If
If Cells(i, j) = "" Then
Cells(i, j - 3).Interior.ColorIndex = 0
End If
If Cells(i, j) = "" Then
Cells(i, j - 2).Interior.ColorIndex = 0
End If
If Cells(i, j) = "" Then
Cells(i, j - 1).Interior.ColorIndex = 0
End If
i = i + 1
Next j1a
i = 1
j = 1
Dim rng As Range
Cells.Locked = False
For Each rng In ActiveSheet.UsedRange.Cells
If rng.Interior.ColorIndex = 15 Then
rng.Locked = True
End If
Next rng
ActiveSheet.Protect
With Application.CommandBars("Worksheet Menu Bar") _
.Controls("Extras").Controls("Schutz")
.Enabled = Not .Enabled
End With
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Fehler im Makro
12.09.2005 10:55:15
u_
Hallo,
wie ich das sehe, müsste der Code so aussehen:

Private Sub Workbook_Open()
Dim i As Long
ActiveSheet.Unprotect
For i = 5 To 3305
If Cells(i, 9) <> "" Then
With Range(Cells(i, 5), Cells(i, 9))
.Interior.ColorIndex = 15
.Locked = True
End With
Else
With Range(Cells(i, 5), Cells(i, 9))
.Interior.ColorIndex = 0
.Locked = False
End With
End If
Next i
ActiveSheet.Protect
With Application.CommandBars("Worksheet Menu Bar") _
.Controls("Extras").Controls("Schutz")
.Enabled = Not .Enabled
End With
End Sub
Gruß
Geist ist geil!
Anzeige
AW: Fehler im Makro
12.09.2005 14:37:15
Urban
Hallo,
danke es funktioniert
AW: Fehler im Makro
12.09.2005 11:09:45
Luschi
Hallo Urban,
ich schätze mal, Du hast in Deiner Tabelle verbundene Zellen (Format-Zellen-Ausrichtung-Zellen verbinden). Habe auch mal 'ne Weile gebraucht, bis ich hinter dieses Phänomen kam. Deshalb schreibe den Locked-Befehl immer wie folgt:
rng.MergeArea.Locked = True
MergeArea richtet bei ungebundenen Zellen keinen Schaden an und bei verbundenen Zellen gibt er den richtigen Zellbezug an.
Gruß von Luschi
aus klein-Paris
AW: Fehler im Makro
12.09.2005 14:35:08
Urban
Hallo Luschi,
danke es funktioniert
Joachim

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige