Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1600to1604
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
Inhaltsverzeichnis

Worksheet-Shape aus Modul ansprechen

Worksheet-Shape aus Modul ansprechen
12.01.2018 18:26:51
Zacharias
Hallo liebe Excelianer,
Zuerst ein Frohes Neues Jahr 2018 für Euch alle!
Ich stehe gerade auf dem Schlauch, was evtl. der Grippe geschuldet ist und
wäre sehr dankbar, falls jemand hilft mein "Brett vorm Kopf" zu entfernen.
Ich habe ein Formular auf einem Arbeitsblatt entworfen, auf dem sich viele
ActiveX-Shapeobjekte befinden, die ich mittels VBA anspreche.
1) Im Code des Blatts kann ich z.B. die Textboxen direkt ansprechen.
z.B. TB_Laufzeitvolumen_Fzge_VSI = "Test"
2) Aus einem Modul heraus kann ich dasselbe Element so ansprechen:
ThisWorkbook(Blattname_STECKBRIEF).TB_Laufzeitvolumen_Fzge_VSI = "Test"
3) Warum klappt es nicht so: ?
Dim wksSteckbrief As Worksheet
Set wksSteckbrief = ThisWorkbook(Blattname_STECKBRIEF)
wksSteckbrief.TB_Laufzeitvolumen_Fzge_VSI = "Test"
Es kommt dann der Hinweis: "Methode oder Datenobjekt nicht gefunden"
Übersehe ich etwas oder klappt Variante 3 tatsächlich nicht?
Vielen Dank vorab für Eure Mühe
Zacharias

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Worksheet-Shape aus Modul ansprechen
12.01.2018 18:56:02
Mullit
Hallo,
Dim wksSteckbrief As Object

Set wksSteckbrief = ThisWorkbook.Worksheets("Tabelle1")
wksSteckbrief.TextBox1.Value = "Testit now"
Gruß, Mullit
AW: Worksheet-Shape aus Modul ansprechen
12.01.2018 19:08:15
Zacharias
Hallo Mullit,
1000 Dank - funktioniert einwandfrei !
Wenn ich nochmal nachfragen darf:
Fängt man sich mit der Deklaration als objekt ggü. der Deklaration als worksheet irgendwelche Nachteile ein?
Ich habe nämlich einen ganzen Satz Tabellenblätter (für jeden PEP-Meilenstein eins - PEP=Produktentstehungsprozess) und würde gern einheitlich bleiben.
P.S.:
Warum kann man überhaupt ein Arbeitsblatt mal als worksheet und mal als object deklarieren?
Ist die Deklaration als object "höherwertig" und enthält quasi als "Untermenge" das Arbeitsblatt und zusätzlich mehr Objekte?
Auf jeden Fall war das sehr hilfreich!
Danke und Gruß
Zacharias
Anzeige
AW: Worksheet-Shape aus Modul ansprechen
12.01.2018 19:09:25
Luschi
Hallo Mullit,
interessante Lösung (Dim wksSteckbrief As Object), ich mach das immer so:
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Tabelle1")
ws.OLEObjects("TextBox1").Object.Value = "Hallo Welt"
Set ws = Nothing
Gruß von Luschi
aus klein-Paris
AW: Worksheet-Shape aus Modul ansprechen
12.01.2018 19:23:49
Zacharias
Hallo Luschi,
was ich eben bei Mullits Lösung super finde ist, daß ich die Textbox direkt wie von einer Userform oder im Code des Blattes gewohnt, direkt unter ihrem Namen ansprechen kann - ohne Gänsefüßchen und OLEObjects etc..
Ist schon kurz und bündig!
Danke und Gruß
Zacharias
Anzeige
AW: Worksheet-Shape aus Modul ansprechen
12.01.2018 19:57:18
Werner
Hallo Zachaarias,
dann mach doch mal bei Mullits Vorschlag aus Dim wksSteckbrief As Object einfach As Worksheet und lass alles andere gleich.
Wird genauso laufen, intern deklariert Excel die Variable sowieso als Worksheet.
Gruß Werner
AW: Worksheet-Shape aus Modul ansprechen
12.01.2018 20:16:06
Zacharias
Hallo Werner,
nein sobald ich aus "as object", "as worksheet" mache, kennt er die Textbox nicht mehr und meldet "Methode oder Datenobjekt nicht gefunden". Das war ja gerade die Ausgangssituation:
Ich bin aber kein Informatiker, sondern nur ein VBA-nutzernder Elektrolurch, aber mir
gefällt die 'it could be done'-Lösung so gut, weil sich die Shpes dann so ansprechen lassen,
wie ich es schon immer aus den UserForms gewohnt bin.
So jetzt muß ich Streit schlichten (Zisckenalarm der Töchter).
Schönen Abend..
Zacharias
Anzeige
AW: Worksheet-Shape aus Modul ansprechen
12.01.2018 19:25:02
Mullit
Hallo Luschi,
würd ich auch als sauberer ansehen, war jetzt mehr ein 'it could be done'-Ansatz...
Gruß, Mullit
AW: Worksheet-Shape aus Modul ansprechen
13.01.2018 00:30:54
Luschi
Hallo Mullit,
di Frage ist doch, warum es nicht funktioniert, wenn man die Variable so definiert:
Dim wksSteckbrief As Worksheet
Gruß von Luschi
aus klein-Paris
AW: Worksheet-Shape aus Modul ansprechen
13.01.2018 00:56:01
Planlos
Hallo
evtl weil "Worksheet" nur ein implementiertes Interface in einer Klasse ist welches die funktionalität für die betreffenden Controls nicht beinhaltet. Wenn du dem Path im Objektkatalog folgst gibt ...Worksheets(..) auch ein "Objekt" zurück.
AW: Worksheet-Shape aus Modul ansprechen
13.01.2018 15:34:52
Mullit
Hallo Luschi,
okidoki, für mich war die Frage wie es funktioniert, wenn man bspw. eine andere Deklaration wählt, den Grund dafür hat Planlos (wie immer gar nich so planlos...) ja bereits treffend benannt...
Sowieso nich weiter kriegsentscheidend, ich würd auch eher wie bereits geschr. eine 'saubere Deklaration' wählen...
Gruß, Mullit
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige