Thema Datum  Von Nutzer Rating
Antwort
Rot Laufzeitfehler 438: Startmakro Commandbutton Eigenschaften ändern
03.05.2017 13:42:39 Felix
NotSolved
03.05.2017 17:15:31 Mackie
NotSolved
04.05.2017 08:42:02 Gast78357
NotSolved
10.05.2017 11:34:35 Felix
Solved

Ansicht des Beitrags:
Von:
Felix
Datum:
03.05.2017 13:42:39
Views:
1382
Rating: Antwort:
  Ja
Thema:
Laufzeitfehler 438: Startmakro Commandbutton Eigenschaften ändern

Hi Community,

 

Ich sitze seit Tagen an einem Problem für die Arbeit. Google und etliche Foren konnten mir leider nicht weiterhelfen.

Ich habe von meinem Vorgänger ein paar Excel-Dateien überarbeitet und dabei ist mir nun ein Fehler untergekommen.

 

Hier mal die Fakten:

Excel 2010, VB 7.0, Windows 7

Ich habe 2 Excel-Dateien: Arbeitsmappe A und Arbeitsmappe B

Über Commandbuttons, Userform, etc. werden Daten aus der Arbeitsmappe B in die Arbeitsmappe A übertragen.
(B kann mehrfach vorhanden sein -> Arbeitsmappe B1, Arbeitsmappe B2, ... bis max. Arbeitsmappe B20, da Arbeitsmappe A und die Userform darin auf max. 20 Dateien ausgelegt sind)

Gleichzeitig wird in jeder so verknüpften Arbeitsmappe B der Pfad&Name von Arbeitsmappe A hinterlegt.
Somit kann über einen weiteren Commandbutton die "übergeordnete" Arbeitsmappe A aus der Arbeitsmappe B aufgerufen werden, ohne sie extra suchen zu müssen.

So weit, so gut.

 

Der Wunsch:

Nun habe ich mir gedacht (da auch noch weitere Commandbuttons mit weiteren verknüpften Dateien vorhanden sind), dass es doch praktisch wäre, die Commandbuttons einzufärben, je nachdem, ob schon eine Datei hinterlegt/verknüpft ist, oder nicht. Hier ein Auszug:

If ThisWorkbook.Sheets("Projektdeckblatt").Range("A62").Value > 0 Then
            ThisWorkbook.Sheets("Projektdeckblatt").CommandButton2.BackColor = &HFF00&
Else
            ThisWorkbook.Sheets("Projektdeckblatt").CommandButton2.BackColor = &H80FF&
End If

Dieser Code ist in der Arbeitsmappe B hinterlegt und wird (per Call-Befehl) bei Workbook_open() und workbook_beforeclose() automatisch ausgeführt.
in A62 wird beim Verknüpfen der Pfad für Arbeitsmappe A hinterlegt.
Ist die Zelle noch leer, bleibt der Commandbutton Orange. Ist ein Pfad hinterlegt, wird der Commandbutton grün.

Allein auf die Arbeitsmappe B bezogen, funktioniert das auch tadellos.

 

Nun das Problem:

Wenn ich jetzt in der Arbeitsmappe A die Userform aufrufe, um meine Arbeitsmappen B1, B2, etc zu verknüpfen, kommt der Laufzeitfehler 438.
Der Fehler liegt auch mit ziemlicher Sicherheit an der oben genannten Befehlszeile. Soweit habe ich mich schon durch den Debugger durchgewühlt.

Im Verknüpfungs-Makro von Arbeitsmappe A wird Arbeitsmappe B (B1, dann B2, dann B3, ...) geöffnet, die Daten kopiert, in Mappe A eingefügt und wieder geschlossen. Alle nach der Reihe, es sind nie 2 Arbeitsmappen B gleichzeitig offen.

Durch das Startmakro workbook_open() in den Arbeitsmappen B wird jedoch unter anderem der Call-Befehl für das Färben der Commandbuttons ausgeführt. Und zack: "Laufzeitfehler 438: Objekt unterstützt diese Eigenschaft oder Methode nicht"... 

Vorerst habe ich einfach den Call-Befehl für das oben genannte Makro auskommentiert, möchte diese Funktion jedoch trotzdem noch integrieren.
Ich verstehe einfach nicht, warum ich diesen Fehler bekomme, wo doch das Startmakro zum Färben funktioniert, wenn ich Arbeitsmappe B manuell öffne.

 

Ich hoffe, ich habe mich verständlich ausgedrückt und bedanke mich schonmal im Voraus für eure Hilfe :-)


LG
Felix


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Laufzeitfehler 438: Startmakro Commandbutton Eigenschaften ändern
03.05.2017 13:42:39 Felix
NotSolved
03.05.2017 17:15:31 Mackie
NotSolved
04.05.2017 08:42:02 Gast78357
NotSolved
10.05.2017 11:34:35 Felix
Solved