2017-10-20 10 views
0

Beim Ausführen des folgenden Codes erhalte ich den Fehler "Laufzeitfehler '1004': Anwendungsdefinierter oder objektdefinierter Fehler". Es bricht auf der markierten LinieFehler 1004 Zellenwert einstellen

Dim cwb As Workbook 
Dim csh As Worksheet 
Set cwb = Workbooks.Open("M:\Secretary Resources\AppTracking\SentSurveys.xlsx") 
Set csh = cwb.Sheets("Sheet1") 
''It breaks on this next line 
csh.Range("A1").End(xlDown).Offset(1, 0).Value = Format(DateTime.Now, "MM-DD-YYYY HH.MM AM/PM") 
csh.Range("A1").End(xlDown).Offset(0, 1).Value = Survey_Count 

ich auf all die Fehler 1004 Antworten geschaut haben, und sie entweder nicht funktioniert (wie unprotecting das Blatt), oder sie haben nicht genug Sinn machen, für mich zu implementieren .

Ich möchte einfach eine vorhandene Tabelle öffnen und eine neue Reihe von Werten an das Ende davon hinzufügen (ohne Änderungen an der aktiven Arbeitsmappe oder dem aktiven Arbeitsblatt, die derzeit von etwas anderem verwendet werden). Hat jemand eine Idee, was ich tun kann, um das zu machen?

EDIT: Dies wird in einem Sub ausgeführt und es funktioniert nicht dort.

+0

funktioniert für mich, ohne Problem. –

+0

Sie gehen zum Ende des Arbeitsblatts und legen dann einen Wert in der darunter liegenden Zeile fest. ... auf nicht vorhandene Zelle zugreifen – jsotola

+0

@jsotola Wäre das nicht außerhalb des Bereichsfehlers? Ich glaube, er bekommt hier ein anderes Problem – Maldred

Antwort

1

Dank jsotola für die Antwort.

Die Lösung war, die Zeile unter Zeile 1 mit etwas zu füllen. Ich habe nur '-' Zeichen verwendet.

End (xlDown) verschiebt sich zur letzten nicht leeren Zelle in der Spalte. Wenn jedoch bereits in der letzten nicht leeren Zelle in der Spalte begonnen wird, werden so viele leere Zellen übersprungen, bis sie gefunden wird findet entweder mehr nicht leere Zellen oder trifft das Ende des Blattes.

Beginnend bei A1 gab es danach nichts mehr, anstatt zu bleiben, wo es begann (was ich annahm), sprang es stattdessen auf den Boden des Blattes. Ich wurde dann zu einer nicht existierenden Zelle außerhalb des Blattes versetzt, was mir den Fehler gab.