Registriert seit: 17.12.2019
Version(en): MS Office Professional Plus 2016
Hallo Excel-Freunde,
ich erhalte nach einer einfachen Funktion/Anweisung "
letztespalte = Activesheet.Cells(1, Columns.Count).End(xlToLeft).Column" die Fehlermeldung "424 - Object erforderlich".
Ich bin mir faast sicher, dass ich solch eine Zeile in anderen Makros bisher genutzt habe. Wieso macht Excel nun Probleme?
Viele Grüße
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo,
an der geposteten Codezeile liegt es nicht.
Gruß Uwe
Registriert seit: 17.12.2019
Version(en): MS Office Professional Plus 2016
19.12.2022, 10:20
(Dieser Beitrag wurde zuletzt bearbeitet: 19.12.2022, 10:22 von ClevEx.)
Hallo Uwe,
das gesamte Makro (nicht benötigte Zeilen herausgelöscht) sieht folgendermaßen aus:
Sub Ermittler()
Dim LetzteSpalte As Integer
letztespalte = Activesheet.Cells(1, Columns.Count).End(xlToLeft).Column 'Activesheet.Cells(1, Columns.Count).End(xlToLeft).Column
End Sub
Wie gesagt, bisher lief es auch. Merkwürdig ist, dass auch die Variable von der Schreibweise NICHT automatisch angepasst wird (Groß-und Kleinschreibung).
VG
Walter
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
19.12.2022, 10:23
(Dieser Beitrag wurde zuletzt bearbeitet: 19.12.2022, 10:32 von LCohen.)
Und wie sah es aus, als Du es erfolgreich benutztest - und unter welcher Excel-Version?
Integer erlaubt nur Werte bis 32767.
Und eine ganze Spalte speichert man in einem Variant.
Oder meinst Du mit der Zuweisung die Spaltennummer? Müsste es dann nicht .Column(s).Count heißen?
Wenn ein Objekt vermisst wird: Set-Anweisung? Auch als Grund für die Nichtanpassung des V-Namens?
Registriert seit: 17.12.2019
Version(en): MS Office Professional Plus 2016
19.12.2022, 10:36
(Dieser Beitrag wurde zuletzt bearbeitet: 19.12.2022, 10:40 von ClevEx.)
Ich meine tatsächlich eine Spaltennummer. Die Syntax ist auch bei der Suche unter Google immer:
Activesheet.Cells(1, Columns.Count).End(xlToLeft).Column
Was geht ist: LetzteSpalte = Range("xx2").End(xlToLeft).Select
Komischerweise wird dann "letztespalte" auch automatisch zu "LetzteSpalte" nach dem Drücken der Return-Taste!
Auch die gewünschten Zuweisungen:
letztezeile = Activesheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
letztezeile = Activesheet.Cells(Rows.Count, 1).End(xlUp).Row
führen zum Laufzeitfehler "424 - Objekt erforderlich"
Ich nutze "Microsoft 365 Apps for Enterprise".
Registriert seit: 03.04.2020
Version(en): Office 365 und 2010
Hallo,
hast Du einmal versucht das betreffende Tabellenblatt direkt anzusprechen? Also anstelle von Activesheet - Tabelle1.blabla oder Sheets("Tabellexy") oder mit With Tabellexy .....End With
Ich hatte das Problem mit mehreren Tabellen in einer Arbeitsmaoppe ebenfalls und konnte durch Zuordnung das Problem lösen.
Grüße
Norbert
Registriert seit: 17.12.2019
Version(en): MS Office Professional Plus 2016
Hallo Norbert,
es lag tatsächlich daran.
Nachdem ich also "Acitvesheet" mit dem tatsächlichen Blattnamen austauschte, brachte Excel keine Fehlermeldung mehr und die Variablen hatten die korrekten Zuweisungen erhalten!
DANKE!
VG und ein entspanntes Weichnachtsfest
Walter