Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Workbook ansprechen nur mit variable!
#1
Hallo Leute,

ich wollte in meinem Projekt alle Sheets und Workbooks nur noch mit Variablen ansprechen, allerdings klappt es nicht so recht!
Fehler: Objekt unterstützt Eigenschaft nicht

Bisher hab ich es so gemacht, das funktioniert natürlich.


Dim WKB1 As String, SH1 as string

WKB1 = Application.ActiveWorkbook.Name
SH1 = Workbooks(WKB1).Worksheets("Data")

Workbooks(WKB1).Sheets(SH1).Cells(200, 1) = 0


Ich wollte es nun so machen, da kommt dann besagter Fehler, weiß jemand wie ich das so zum laufen bekomme?

Dim wbTool As Workbook
Dim shAuswahl As Worksheet

Set wbTool = Application.ActiveWorkbook
Set shAuswahl = wbTool.Worksheets("Sverweis-Auswahl")

wbTool.shAuswahl.Cells(200, 1) = 0



Gruß
Antworten Top
#2
Hallo,

shAuswahl.Cells(200, 1) = 0 reicht aus, denn Du hast ja jetzt einen Zeiger auf das Arbeitsblatt gesetzt.

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awards
https://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
Antworten Top
#3
Hi,

ja klar, manchmal ist das Brett vor dem Kopf sehr voluminös :)


Danke und Gruß
Antworten Top
#4
Hallo H...,

die Deklaration ist "falsch" (zumindest für das Worksheet). Richtig ist:

Dim WKB1 As Workbook, SH1 as Worksheet

und da die Objekte jetzt schon Workbook und Worksheet sind:

WKB1 = Application.ActiveWorkbook

SH1 = WKB1.Worksheets("Data")

SH1.Cells(200, 1) = 0
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top


Gehe zu:


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