Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
192to196
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
192to196
192to196
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

laufzeitfehler 1004

laufzeitfehler 1004
20.12.2002 20:04:26
denis
hallo zusammen,
folgendes problem:
ich habe ein makro geschrieben, dass unteranderem einen Schutz eines sheets einfernt, einige zellen "unlocked" und dann wieder den schutz über das sheet legt. unter 2000 läuft es einwandfrei, unter 97 kommt leider folgende fehlermeldung: "laufzeitfehler 1004". einige beiträge berichten ähnliche probleme...die entsprechenden lösungen haben mir aber nicht weiter geholfen.
am restprogramm kann es nicht legen, da das "unprotect" gleich zu beginn des programmes eingeleitet wird.

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

Betreff
Datum
Anwender
Anzeige
Re: laufzeitfehler 1004
20.12.2002 20:08:44
denis
hier noch der source:

Private Sub CommandButton1_Click()
Dim i As Integer
Dim j As Integer
Dim x As Integer
Dim y As Integer
Dim z As Integer

'Relavante Objekte aktivieren
Tabelle13.Unprotect
Tabelle13.CheckBox1.Enabled = True
Tabelle13.CheckBox2.Enabled = True
Tabelle13.CommandButton2.Enabled = True

'Schutz von relavanten Zellen entfernen
Tabelle13.Range("C7:G7").Locked = False
Tabelle13.Cells(28, 13).Locked = False
For z = 0 To 2
Tabelle13.Cells((28 + 3 * z), 11).Locked = False
Next z
For x = 0 To 2
For y = 0 To 1
Tabelle13.Cells((37 + 3 * x), (11 + 2 * y)).Locked = False
Next y
Next x

Tabelle13.Cells(7, 5) = Date 'Setzt in Tabelle13 Datumsfeld auf Systemdatum
Tabelle13.Cells(7, 5).Locked = True
Tabelle13.Protect
End Sub


Anzeige
Re: laufzeitfehler 1004
20.12.2002 21:08:31
Ramses
Der Fehler mit dem Schutz ist hinreichend bekannt.
Das Problem liegt im Dateischutz der unter 2000 anscheinend anders gelöst ist als in 97.
Lösung gibt es dafür leider keine.

Der Code wie abgebildet läuft allerdings auch unter 2000 nicht :-)

Ausser du hättest die Variable Tabelle13 irgendwo als Worksheets-Object definiert und mit einer Set-Anweisung gefüllt.

Es müsste sonst zumindest:
Worksheets("Tabelle13").Cells.....
heissen.

Warum entsperrst du eigentlich bei jedem Aufruf die gleichen Zellen?
Da kannst du sie ja gleich entsperrt speichern.


Gruss Rainer

Anzeige
Re: laufzeitfehler 1004
20.12.2002 22:23:47
L.Vira
Tabelle13 ist der Codename der Tabelle, nicht der Name, ist schon ok.
For z = 0 To 2
Tabelle13.Cells((28 + 3 * z), 11).Locked = False
Next z

Beim 1. Durchlauf ist z = 0 dann ist cells(28+3*z,11) auch 0
und eine Zeile 0 gibts nicht.

Weisst du mehr darüber.... :-)
20.12.2002 22:32:20
Ramses
Hallo L.Vira,

... oder warum bist du dir da so sicher ( Tabelle13 ).

Das mit der 0 ist mir allerdings durchgegangen :-)

Gruss Rainer

Re: Weisst du mehr darüber.... :-)
20.12.2002 22:42:20
Nepumuk
Hallo ihr beiden,
L.Vira hat in Punkt eins schon recht. Punkt zwei ist eine Addition und wenn ich zu 28 null addiere, dann ist das eben 28.
Gruß
Nepumuk
Klar, Pfui über mir...oT
20.12.2002 22:55:23
L.Vira
puert
Re: laufzeitfehler 1004
22.12.2002 04:08:16
Denis
hallo rainer,
1.) der code läuft unter 2000.
2.) tabelle 13 ist keine variable sondern ein objekt, nämlich das 13.arbeitsblatt. die deklaration mit worksheet("tabelle13") ist nicht zwingend notwendig.
3.) mir ist natürlich klar, dass ich die zellen standartmässig auf ensperrt setzen kann. gerade das möchte ich nicht. die einzige möglichkeit die der benutzer zu beginn haben soll, ist den "commandbutton1" zu drücken(macht sinn wenn man den rest vom programm kennt). dieser entsperrt nun die vom benutzer auszufüllenden zellen.
gruss denis
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige