[Excel 2016] Laufzeitfehler 1004
#1
Moin!

Ich habe da ein kleines Problem. Ich habe diesen Teil meines Codes:
Code:
With ThisWorkbook.Worksheets("Liste").ListObjects(1).ListRows
With .Add(Position:=.Count + 1)
.Range(1, 1).Value = Datum.Value



Ich bekomme an dieser Stelle (und allen folgenden so aufgebauten Einträgen)

Code:
.Range(1, 1).Value = Datum.Value

stets einen Laufzeitfehler '1004', Anwendungs- oder Objektdefinierter Fehler.

Ich kann leider nicht ermitteln, weshalb dieser nun auftritt. Ziel ist es den Inhalt einer Textbox in die erste freie Zelle einer angelegten Tabelle zu schreiben. Ging auch schon.

Hoffe jemand hat eine Idee.
Lieber Gruß!
Antworten Top
#2
Moin!
Nimm .Cells(1, 1) statt dem falschen .Range(1, 1)
(man könnte auch .Cells(1) nehmen)

Ungetestet,
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Moin Ralf,

bei .Cells schmeißt er mir leider einen Fehler: "Objekt unterstützt diese Eigenschaft oder Methode nicht".
Lieber Gruß!
Antworten Top
#4
Hi,

teste mal
Code:
.Range.Cells(1, 1)
ListRows.Add liefert nämlich eine ListRow zurück (welch ein Wunder!). Und eine ListRow kennt neben den üblichen Eigenschaften (Application, Creator, Parent) nur noch Index (die Nr. innerhalb des Listobjekts) und Range (die Zellen der ListRow).
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#5
Moin Helmut,

da kommt leider wieder der alte Fehler: "Anwendungs- oder objektdefinierter Fehler".
Lieber Gruß!
Antworten Top
#6
Hi,

dann beantworte dir selber mal die Frage: Wie ist Datum definiert? Ist das der Name der Textbox?  Befindet sich dein Routine innerhalb der Userform der Textbox?
Teste mal
Code:
.Range.Cells(1, 1) = UserForm1.Datum.Value

Falls es das auch nicht ist: Beispieldatei!
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#7
Hallöchen,

Du kannst selbst die fehlerhafte "Seite" ermitteln, wenn Du im Code statt Datum.Value einen fixen Wert einträgst oder z.B. in der Überprüfung schaust, was Datum.Value ergibt oder auch nicht.
Du kannst auch nur Datum in die Überprüfung nehmen. Falls es Datum geben sollte, dann kannst Du nachschauen, ob es eine Eigenschaft Value darin gibt.
...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#8
Hallo

probier es bitte mal so:      (ohne ListRows!)
With ThisWorkbook.Worksheets("Liste").ListObjects(1)
.Cells(1, 1).Value = Datum.Value

mfg Gast 123
Antworten Top
#9
Moin!

Debugging habe ich ja schon durch. Das Datum welches in die Textbox eingetragen wurde befindet sich in dem Value.

Zitat:Du kannst selbst die fehlerhafte "Seite" ermitteln, wenn Du im Code statt Datum.Value einen fixen Wert einträgst oder z.B. in der Überprüfung schaust, was Datum.Value ergibt oder auch nicht.

Du kannst auch nur Datum in die Überprüfung nehmen. Falls es Datum geben sollte, dann kannst Du nachschauen, ob es eine Eigenschaft Value darin gibt.


Der Fehler liegt auf der Seite des Listobjects. Auch ein vorgegebener fixer Wert gibt den Fehler aus.



Zitat:probier es bitte mal so:      (ohne ListRows!)
With ThisWorkbook.Worksheets("Liste").ListObjects(1)
.Cells(1, 1).Value = Datum.Value
Dabei wird wieder der Fehler ausgeworfen, dass dieses Objekt die Eigenschaft oder Methode nicht unterstützt.

Ich wollte eben eine Beispieldatei anlegen und merkwürdigerweise funktioniert es in dieser, aber nicht im großen Projekt...


.xlsm   Beispiel.xlsm (Größe: 20,81 KB / Downloads: 0)

Moin!

Vielen Dank für eure Zeit und Ideen... letztendlich war es einfach nur UNVERMÖGEN!

Jemand anderes der sich kurz die Tabelle angesehen hat, hat einen Blattschutz auf das Blatt "Liste" gelegt. Ich habe die Liste nicht weiter beachtet, da diese ja "fertig" war.

Ich bitte um Verzeihung eure kostbare Zeit vergeudet zu haben.
Lieber Gruß!
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste