Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1260to1264
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

controls in multipage

controls in multipage
Marco
Hallo Leute,
habe folgenden code, der controls in eine userform einfügt:
ThisWorkbook.VBProject.VBComponents("UserForm1").Designer.Controls.Add("Forms.MultiPage.1").Pages.Add(Page3).Add("Forms.CommandButton.1")
Aber es wird da eine neue multipage erzeugt, aber ich möchte, das der commandbutton in einer bereits vorhandenen multipage erzeugt wird. Kann man den Code entsprechend abändern, bzw. wie kann ich diese vorhandene multipage ansprechen, um in ihr controls zu erzeugen?
Freue mich auf eure Antwort
Grüße Marco
AW: controls in multipage
29.04.2012 13:36:23
ransi
Hallo Marco
Hilft dir dies weiter ?
Option Explicit

Sub machs()
    Dim Neue_Seite As Object
    Set Neue_Seite = ThisWorkbook.VBProject.VBComponents("UserForm1").Designer.Controls("Multipage1").Pages.Add 'Neue Seite einfügen
    With Neue_Seite
        .Name = "Page3"
        .Caption = "Meine neue Seite"
        .Controls.Add ("Forms.CommandButton.1") 'Button einfügen
    End With
End Sub


ransi
Anzeige
AW: controls in multipage
29.04.2012 13:45:44
Marco
Hallo Ransi,
danke. Hilft aber nicht. Bei der Zeile:
Set Neue_Seite = ThisWorkbook.VBProject.VBComponents("UserForm1").Designer.Controls("Multipage1").Pages.Add
wirft er excel den fehler:
laufzeitfehler 91 objektvariable oder with-blockvariable nicht festgelegt
aus.
Grüße
Marco
AW: controls in multipage
29.04.2012 13:49:31
Hajo_Zi
Hallo Marco,
dann stimmen wohl die Bezeichnungen nicht.
Der Code läuft Fehllerfrei.
Gruß Hajo
AW: controls in multipage
29.04.2012 13:54:38
Marco
Hallo Hajo,
die Bezeichnungen stimmen und die neue mappe hab ich auch abgespeichert.
Kann es ein, dass noch ein verweis zu einer bibliothek fehlt.
Grüße
Marco
Anzeige
AW: controls in multipage
29.04.2012 13:59:38
Marco
jetzt läufts. Das Problem war wohl, dass im gleichen code der befehl userform1.show vb modeless
ausgeführt werden sollte, dass ich die userform gleich sehen kann.
danke an euch.
Grüße
Marco
Ups, den Link zeigte ich schon gestern :-) owT
29.04.2012 16:17:02
Reinhard

AW: controls in multipage
29.04.2012 13:59:23
ransi
HAllo
Dann ist in deiner Datei irgendwas anders als in meiner ;-?
Bei mir läufts.
Userbild
ransi
Anzeige
AW: controls in multipage
29.04.2012 14:03:40
Marco
läuft super.
tausend dank.
Grüße
Marco
Zugriff auf VBA-Projekte
29.04.2012 16:40:58
Tino
Hallo,
Du bist Dir aber bewusst,
dass dies nur dort funktioniert wo der Zugriff auf VBA-Projekte zugelassen ist!
Standartmäßig ist dies nicht zugelassen und der Zugriff wird auch nicht mit der Datei weitergegeben!
Gruß Tino
AW: Zugriff auf VBA-Projekte
29.04.2012 18:15:23
Marco
Hallo Tino,
dessen bin ich mir bewußt.
Jetzt habe ich aber ein neues Problem.
Ich bekomme manchmal beim Ausführen des Codes:
Set Neue_Seite = ThisWorkbook.VBProject.VBComponents("UserForm1").Designer.Controls("Multipage1").Pages.Add 'Neue Seite einfügen
With Neue_Seite
.Caption = InputBox(Prompt:="Boxnummer bestätigen.", _
Title:="", Default:=ActiveWorkbook.Sheets.Count - 2)
.Name = "Page" & ActiveWorkbook.Sheets.Count - 2
.Controls.Add ("Forms.listbox.1")
End With
bei
.Controls.Add ("Forms.listbox.1")
die Fehlermeldung:
Laufzeitfehler '-2147319767 (80028029)':
Ungültige Vorreferenz oder Referenz zu unkompilierten Typ.
Wenn ich nach der Fehlermeldung die neu erstellte page in multipage 1 manuell lösche und den code nochmal laufen lasse, dann geht es.
Grüße
Marco
Anzeige
kann ich bei mir nicht feststellen, ...
29.04.2012 18:43:40
Tino
Hallo,
habe den Code jetzt mit einer Schleife 200 mal aufgerufen ohne die InputBox, kein Fehler.
Gruß Tino
AW: kann ich bei mir nicht feststellen, ...
29.04.2012 18:48:57
Marco
Hallo Tino,
habs auch nochmal ohne die inputbox probiert. geht bei mir nicht.
Anscheinend ist das Problem., dass ich den Code ein eine vorhandene Mappe eingefügt habe. Da existiert eine userform.multipage mit 30 seiten.
denn in einer neu angelegten userform habe ich das problem auch nicht.
naja werd mal weiterforschen, woran das liegen könnte, oder hast du evtl noch einen tip.
Grüße
Marco
Beispieldatei
29.04.2012 19:01:30
Tino
Hallo,
kannst Du mal ein Beispiel hochladen wo dieser Fehler auftritt.
Bei mir gehts auch bei vorhandenen.
Gruß Tino
Anzeige
AW: Beispieldatei
29.04.2012 19:16:18
Marco
kann ich die datei an deine email schicken?
sei mir nicht böse,...
29.04.2012 19:52:07
Tino
Hallo,
aber ich finde die Lösung sollte im Forum erarbeitet werden.
Ich lass mal offen, vielleicht kennt einer diesen Fehler.
Gruß Tino
AW: Beispieldatei
29.04.2012 19:53:22
Marco
Hallo Tino,
hat sich erledigt. das problem ist, dass die userform agezeigt wurde im open event der mappe. ich hab sie zwar danach durch unload bzw. hide verschwinden lassen, aber der fehler ist deswegen trotzdem aufgetreten. jetzt klappts.
Vielen Dank für deine Tipps.
Grüße
Marco
ich weiß ja nicht, ...
30.04.2012 11:09:18
Rudi
Hallo,
aber bei mir funktioniert auch dieser 'Primitivcode'. Ohne VBProject, VBComponents, Designer & Co.
In UF:
Private Sub UserForm_Activate()
machs
End Sub
In Modul:
Sub machs()
Dim cmd As Control, meineSeite As Object
With UserForm1.MultiPage1
Set meineSeite = .Pages.Add
With meineSeite
Set cmd = .Controls.Add("Forms.commandbutton.1")
With cmd
.Caption = "Test"
.Left = 100
.Top = 100
End With
End With
.Value = .Pages.Count - 1
End With
End Sub
Gruß
Rudi
Anzeige
aber nur zur Laufzeit, ...
30.04.2012 11:19:57
Tino
Hallo,
Marco will sie dauerhaft drin haben.
Gruß Tino
AW: aber nur zur Laufzeit, ...
30.04.2012 11:23:25
Rudi
Hallo,
Marco will sie dauerhaft drin haben.
woher weißt du das? Das geht aus seiner Frage nicht hervor.
Gruß
Rudi

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige