Laufzeitfehler 424

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Laufzeitfehler 424 von: Josef
Geschrieben am: 03.04.2005 17:52:11

Hallo!

Ich bekomme, nachdem ich in einer Userform eine Änderung durchgeführt habe, und diese Userform danach aurufe, den Laufzeitfehler 424 (Objekt erforderlich).
Wenn ich diese Meldung wegklicke, dann kann ich diese Userform immer wieder aufrufen, ohne dass diese Fehlermeldung erscheint. Alles funktioniert bestens.
Außer ich ändere wieder etwas, dann ist dieser fehler wieder da. Was könnte ich hier bitte falsch gemacht haben?


Danke


josef

Bild


Betrifft: AW: Laufzeitfehler 424 von: Josef
Geschrieben am: 03.04.2005 19:57:01

Hallo!

Könnte es möglich sein, dass dieser Laufzeitfehler kommt, weil bei der Initialsierung der Userform z.B. eine ComboBox angesprochen wird, welche aus beabsichtigtem Grund noch nicht sichtbar ist?

Ich habe einige Commandbutton, wo nach Drücken dieser Frames geschlossen bzw. andere Frames geöffnet werden. In diesen Frames gibt es einige ComboBoxen welche über die Initialiserung befüllt werden.


Josef


Bild


Betrifft: Hier wäre der Code von: Josef
Geschrieben am: 03.04.2005 21:09:14

Hallo nochmals!

Wenn der Fehler beim Aufrufen der Userform erfolgt, nehme ich mal an dass der Fehler nur bei UserForm_Activate oder bei UserForm_Initialize liegen kann.

Hier wäre der Code:


Private Sub UserForm_Activate()
Frame1.Visible = True  'Sart 00
Frame11.Visible = False 'Sart 99
Frame12.Visible = True 'Sart
Frame13.Visible = False 'Sart
End Sub



Private Sub UserForm_Initialize()
If Frame1.Visible = True Then
ComboBox7.AddItem "01" 'ListIndex = 0
ComboBox7.AddItem "02"
ComboBox7.AddItem "03"
ComboBox7.AddItem "04"
ComboBox7.AddItem "05"
ComboBox7.AddItem "06"
ComboBox7.AddItem "07"
ComboBox7.AddItem "08"
ComboBox7.AddItem "09"
ComboBox7.AddItem "10"
ComboBox7.AddItem "11"
ComboBox7.AddItem "12"
ComboBox7.AddItem "13"
ComboBox7.AddItem "14"
ComboBox7.AddItem "15"
ComboBox7.AddItem "16"
ComboBox7.AddItem "17"
ComboBox7.AddItem "18"
ComboBox7.AddItem "19"
ComboBox7.AddItem "20"
ComboBox7.AddItem "21"
ComboBox7.Style = fmStyleDropDownList  
ComboBox7.BoundColumn = 0            
ComboBox7.ListIndex = 0
'ComboBox9
ComboBox9.AddItem "0"        'ListIndex = 0
ComboBox9.AddItem "1"     'ListIndex = 1
ComboBox9.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox9.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox9.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
TextBox129 = Format(Date, "ddmmyy")
End If
If Frame13.Visible = True Then
'ComboBox6
ComboBox6.AddItem "1"        'ListIndex = 0
ComboBox6.AddItem "2"     'ListIndex = 1
ComboBox6.AddItem "3"     'ListIndex = 2
ComboBox6.AddItem "4"       'ListIndex = 3
ComboBox6.AddItem "5"    'ListIndex = 4
ComboBox6.AddItem "6"    'ListIndex = 5
ComboBox6.AddItem "7"      'ListIndex = 6
ComboBox6.AddItem "8"    'ListIndex = 7
ComboBox6.AddItem "9"    'ListIndex = 8
ComboBox6.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox6.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox6.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegenox13.RowSource = "Codes!S5:S261" '& Sheets("Tabelle2").Range("A65536").End(xlUp).Row
'ComboBox10
ComboBox10.AddItem "00000"
ComboBox10.AddItem "00001"
ComboBox10.AddItem "00002"
ComboBox10.AddItem "00003"
ComboBox10.AddItem "00004"
ComboBox10.AddItem "00005"
ComboBox10.AddItem "00006"
ComboBox10.AddItem "00007"
ComboBox10.AddItem "00008"
ComboBox10.AddItem "00009"
ComboBox10.AddItem "00010"
ComboBox10.AddItem "00011"
ComboBox10.AddItem "00012"
ComboBox10.AddItem "00013"
ComboBox10.AddItem "00014"
ComboBox10.AddItem "00015"
ComboBox10.AddItem "00016"
ComboBox10.AddItem "00017"
ComboBox10.AddItem "00018"
ComboBox10.AddItem "00019"
ComboBox10.AddItem "00020"
ComboBox10.AddItem "00021"
ComboBox10.AddItem "00022"
ComboBox10.AddItem "00023"
ComboBox10.AddItem "00024"
ComboBox10.AddItem "00025"
ComboBox10.AddItem "00026"
ComboBox10.AddItem "00027"
ComboBox10.AddItem "00028"
ComboBox10.AddItem "00029"
ComboBox10.AddItem "00030"
ComboBox10.AddItem "00031"
ComboBox10.AddItem "00032"
ComboBox10.AddItem "00033"
ComboBox10.AddItem "00034"
ComboBox10.AddItem "00035"
ComboBox10.AddItem "00036"
ComboBox10.AddItem "00037"
ComboBox10.AddItem "00038"
ComboBox10.AddItem "00039"
ComboBox10.AddItem "00040"
ComboBox10.AddItem "00041"
ComboBox10.AddItem "00042"
ComboBox10.AddItem "00043"
ComboBox10.AddItem "00044"
ComboBox10.AddItem "00045"
ComboBox10.AddItem "00046"
ComboBox10.AddItem "00047"
ComboBox10.AddItem "00048"
ComboBox10.AddItem "00049"
ComboBox10.AddItem "00050"
ComboBox10.AddItem "00051"
ComboBox10.AddItem "00052"
ComboBox10.AddItem "00053"
ComboBox10.AddItem "00054"
ComboBox10.AddItem "00055"
ComboBox10.AddItem "00056"
ComboBox10.AddItem "00057"
ComboBox10.AddItem "00058"
ComboBox10.AddItem "00059"
ComboBox10.AddItem "00060"
ComboBox10.AddItem "00061"
ComboBox10.AddItem "00062"
ComboBox10.AddItem "00063"
ComboBox10.AddItem "00064"
ComboBox10.AddItem "00065"
ComboBox10.AddItem "00066"
ComboBox10.AddItem "00067"
ComboBox10.AddItem "00068"
ComboBox10.AddItem "00069"
ComboBox10.AddItem "00070"
ComboBox10.AddItem "00071"
ComboBox10.AddItem "00072"
ComboBox10.AddItem "00073"
ComboBox10.AddItem "00074"
ComboBox10.AddItem "00075"
ComboBox10.AddItem "00076"
ComboBox10.AddItem "00077"
ComboBox10.AddItem "00078"
ComboBox10.AddItem "00079"
ComboBox10.AddItem "00080"
ComboBox10.AddItem "00081"
ComboBox10.AddItem "00082"
ComboBox10.AddItem "00083"
ComboBox10.AddItem "00084"
ComboBox10.AddItem "00085"
ComboBox10.AddItem "00086"
ComboBox10.AddItem "00087"
ComboBox10.AddItem "00088"
ComboBox10.AddItem "00089"
ComboBox10.AddItem "00090"
ComboBox10.AddItem "00091"
ComboBox10.AddItem "00092"
ComboBox10.AddItem "00093"
ComboBox10.AddItem "00094"
ComboBox10.AddItem "00095"
ComboBox10.AddItem "00096"
ComboBox10.AddItem "00097"
ComboBox10.AddItem "00098"
ComboBox10.AddItem "00099"
ComboBox10.AddItem "00100"
ComboBox10.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox10.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox10.ListIndex = 0
'ComboBox11
ComboBox11.AddItem "0"        'ListIndex = 0
ComboBox11.AddItem "1"        'ListIndex = 1
ComboBox11.AddItem "2"     'ListIndex = 2
ComboBox11.AddItem "3"     'ListIndex = 3
ComboBox11.AddItem "4"       'ListIndex = 4
ComboBox11.AddItem "5"    'ListIndex = 5
ComboBox11.AddItem "6"    'ListIndex = 6
ComboBox11.AddItem "7"      'ListIndex = 7
ComboBox11.AddItem "8"    'ListIndex = 8
ComboBox11.AddItem "9"    'ListIndex = 9
ComboBox11.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox11.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox11.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox12
ComboBox12.AddItem "0"        'ListIndex = 0
ComboBox12.AddItem "1"        'ListIndex = 1
ComboBox12.AddItem "2"     'ListIndex = 2
ComboBox12.AddItem "3"     'ListIndex = 3
ComboBox12.AddItem "4"       'ListIndex = 4
ComboBox12.AddItem "5"    'ListIndex = 5
ComboBox12.AddItem "6"    'ListIndex = 6
ComboBox12.AddItem "7"      'ListIndex = 7
ComboBox12.AddItem "8"    'ListIndex = 8
ComboBox12.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox12.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox12.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox14
ComboBox14.AddItem "0"    'ListIndex = 0
ComboBox14.AddItem "1"        'ListIndex = 1
ComboBox14.AddItem "2"     'ListIndex = 2
ComboBox14.AddItem "3"     'ListIndex = 3
ComboBox14.AddItem "4"       'ListIndex = 4
ComboBox14.AddItem "5"    'ListIndex = 5
ComboBox14.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox14.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox14.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox15
ComboBox15.AddItem "ES30   "    'ListIndex = 0
ComboBox15.AddItem "ES50   "        'ListIndex = 1
ComboBox15.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox15.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox15.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox26
ComboBox26.AddItem "0"        'ListIndex = 0
ComboBox26.AddItem "1"        'ListIndex = 1
ComboBox26.AddItem "2"        'ListIndex = 2
ComboBox26.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox26.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox26.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox27
ComboBox27.AddItem "1"        'ListIndex = 0
ComboBox27.AddItem "2"     'ListIndex = 1
ComboBox27.AddItem "3"     'ListIndex = 2
ComboBox27.AddItem "4"       'ListIndex = 3
ComboBox27.AddItem "5"    'ListIndex = 4
ComboBox27.AddItem "6"    'ListIndex = 5
ComboBox27.AddItem "7"      'ListIndex = 6
ComboBox27.AddItem "8"    'ListIndex = 7
ComboBox27.AddItem "9"    'ListIndex = 8
ComboBox27.AddItem "0"    'ListIndex = 9
ComboBox27.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox27.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox27.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox28
ComboBox28.AddItem "ES30   "    'ListIndex = 0
ComboBox28.AddItem "ES50   "        'ListIndex = 1
ComboBox28.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox28.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox28.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox29
ComboBox29.AddItem "ES30   "    'ListIndex = 0
ComboBox29.AddItem "ES50   "        'ListIndex = 1
ComboBox29.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox29.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox29.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox30
ComboBox30.AddItem "ES30   "    'ListIndex = 0
ComboBox30.AddItem "ES50   "        'ListIndex = 1
ComboBox30.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox30.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox30.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox31
ComboBox31.AddItem "ES30   "    'ListIndex = 0
ComboBox31.AddItem "ES50   "        'ListIndex = 1
ComboBox31.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox31.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox31.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
End If
'**************************************************************************************
'***********************************ComboBox Codes*************************************
'**************************************************************************************
'ComboBox1
ComboBox1.AddItem "40"        'ListIndex = 0
ComboBox1.AddItem "41"     'ListIndex = 1
ComboBox1.AddItem "42"     'ListIndex = 2
ComboBox1.AddItem "43"       'ListIndex = 3
ComboBox1.AddItem "44"    'ListIndex = 4
ComboBox1.AddItem "45"    'ListIndex = 5
ComboBox1.AddItem "46"      'ListIndex = 6
ComboBox1.AddItem "47"    'ListIndex = 7
ComboBox1.AddItem "48"    'ListIndex = 8
ComboBox1.AddItem "49"      'ListIndex = 9
ComboBox1.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox1.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox1.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox2
ComboBox2.AddItem "1"        'ListIndex = 0
ComboBox2.AddItem "2"     'ListIndex = 1
ComboBox2.AddItem "3"     'ListIndex = 2
ComboBox2.AddItem "4"       'ListIndex = 3
ComboBox2.AddItem "5"    'ListIndex = 4
ComboBox2.AddItem "6"    'ListIndex = 5
ComboBox2.AddItem "7"      'ListIndex = 6
ComboBox2.AddItem "8"    'ListIndex = 7
ComboBox2.AddItem "9"    'ListIndex = 8
ComboBox2.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox2.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox2.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox3
ComboBox3.AddItem "04"        'ListIndex = 0
ComboBox3.AddItem "05"        'ListIndex = 1
ComboBox3.AddItem "06"     'ListIndex = 2
ComboBox3.AddItem "07"     'ListIndex = 3
ComboBox3.AddItem "08"       'ListIndex = 4
ComboBox3.AddItem "09"    'ListIndex = 5
ComboBox3.AddItem "10"    'ListIndex = 6
ComboBox3.AddItem "11"      'ListIndex = 7
ComboBox3.AddItem "12"    'ListIndex = 8
ComboBox3.AddItem "13"    'ListIndex = 9
ComboBox3.AddItem "14"        'ListIndex = 10
ComboBox3.AddItem "15"     'ListIndex = 11
ComboBox3.AddItem "16"     'ListIndex = 12
ComboBox3.AddItem "17"       'ListIndex = 13
ComboBox3.AddItem "18"    'ListIndex = 14
ComboBox3.AddItem "19"    'ListIndex = 15
ComboBox3.AddItem "20"      'ListIndex = 16
ComboBox3.AddItem "21"    'ListIndex = 17
ComboBox3.AddItem "22"    'ListIndex = 18
ComboBox3.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox3.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox3.ListIndex = 1              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox4
ComboBox4.AddItem "01"        'ListIndex = 0
ComboBox4.AddItem "02"     'ListIndex = 1
ComboBox4.AddItem "03"     'ListIndex = 2
ComboBox4.AddItem "04"       'ListIndex = 3
ComboBox4.AddItem "05"    'ListIndex = 4
ComboBox4.AddItem "06"    'ListIndex = 5
ComboBox4.AddItem "07"      'ListIndex = 6
ComboBox4.AddItem "08"    'ListIndex = 7
ComboBox4.AddItem "09"    'ListIndex = 8
ComboBox4.AddItem "10"        'ListIndex = 9
ComboBox4.AddItem "11"     'ListIndex = 10
ComboBox4.AddItem "12"     'ListIndex = 11
ComboBox4.AddItem "21"       'ListIndex = 12
ComboBox4.AddItem "22"    'ListIndex = 13
ComboBox4.AddItem "23"    'ListIndex = 14
ComboBox4.AddItem "24"      'ListIndex = 15
ComboBox4.AddItem "25"    'ListIndex = 16
ComboBox4.AddItem "26"    'ListIndex = 17
ComboBox4.AddItem "91"    'ListIndex = 18
ComboBox4.AddItem "92"    'ListIndex = 19
ComboBox4.AddItem "93"    'ListIndex = 20
ComboBox4.AddItem "94"    'ListIndex = 21
ComboBox4.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox4.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox4.ListIndex = 0              'Kombinationsfeld auf ersten Eintrag festlegen
'ComboBox5
ComboBox5.AddItem "00000" 'ListIndex = 0
ComboBox5.AddItem "00001"
ComboBox5.AddItem "00002"
ComboBox5.AddItem "00003"
ComboBox5.AddItem "00004"
ComboBox5.AddItem "00005"
ComboBox5.AddItem "00006"
ComboBox5.AddItem "00007"
ComboBox5.AddItem "00008"
ComboBox5.AddItem "00009"
ComboBox5.AddItem "00010"
ComboBox5.AddItem "00011"
ComboBox5.AddItem "00012"
ComboBox5.AddItem "00013"
ComboBox5.AddItem "00014"
ComboBox5.AddItem "00015"
ComboBox5.AddItem "00016"
ComboBox5.AddItem "00017"
ComboBox5.AddItem "00018"
ComboBox5.AddItem "00019"
ComboBox5.AddItem "00020"
ComboBox5.AddItem "00021"
ComboBox5.AddItem "00022"
ComboBox5.AddItem "00023"
ComboBox5.AddItem "00024"
ComboBox5.AddItem "00025"
ComboBox5.AddItem "00026"
ComboBox5.AddItem "00027"
ComboBox5.AddItem "00028"
ComboBox5.AddItem "00029"
ComboBox5.AddItem "00030"
ComboBox5.AddItem "00031"
ComboBox5.AddItem "00032"
ComboBox5.AddItem "00033"
ComboBox5.AddItem "00034"
ComboBox5.AddItem "00035"
ComboBox5.AddItem "00036"
ComboBox5.AddItem "00037"
ComboBox5.AddItem "00038"
ComboBox5.AddItem "00039"
ComboBox5.AddItem "00040"
ComboBox5.AddItem "00041"
ComboBox5.AddItem "00042"
ComboBox5.AddItem "00043"
ComboBox5.AddItem "00044"
ComboBox5.AddItem "00045"
ComboBox5.AddItem "00046"
ComboBox5.AddItem "00047"
ComboBox5.AddItem "00048"
ComboBox5.AddItem "00049"
ComboBox5.AddItem "00050"
ComboBox5.AddItem "00051"
ComboBox5.AddItem "00052"
ComboBox5.AddItem "00053"
ComboBox5.AddItem "00054"
ComboBox5.AddItem "00055"
ComboBox5.AddItem "00056"
ComboBox5.AddItem "00057"
ComboBox5.AddItem "00058"
ComboBox5.AddItem "00059"
ComboBox5.AddItem "00060"
ComboBox5.AddItem "00061"
ComboBox5.AddItem "00062"
ComboBox5.AddItem "00063"
ComboBox5.AddItem "00064"
ComboBox5.AddItem "00065"
ComboBox5.AddItem "00066"
ComboBox5.AddItem "00067"
ComboBox5.AddItem "00068"
ComboBox5.AddItem "00069"
ComboBox5.AddItem "00070"
ComboBox5.AddItem "00071"
ComboBox5.AddItem "00072"
ComboBox5.AddItem "00073"
ComboBox5.AddItem "00074"
ComboBox5.AddItem "00075"
ComboBox5.AddItem "00076"
ComboBox5.AddItem "00077"
ComboBox5.AddItem "00078"
ComboBox5.AddItem "00079"
ComboBox5.AddItem "00080"
ComboBox5.AddItem "00081"
ComboBox5.AddItem "00082"
ComboBox5.AddItem "00083"
ComboBox5.AddItem "00084"
ComboBox5.AddItem "00085"
ComboBox5.AddItem "00086"
ComboBox5.AddItem "00087"
ComboBox5.AddItem "00088"
ComboBox5.AddItem "00089"
ComboBox5.AddItem "00090"
ComboBox5.AddItem "00091"
ComboBox5.AddItem "00092"
ComboBox5.AddItem "00093"
ComboBox5.AddItem "00094"
ComboBox5.AddItem "00095"
ComboBox5.AddItem "00096"
ComboBox5.AddItem "00097"
ComboBox5.AddItem "00098"
ComboBox5.AddItem "00099"
ComboBox5.AddItem "00100"
ComboBox5.Style = fmStyleDropDownList  'Dropdown-Liste verwenden
ComboBox5.BoundColumn = 0            'Werte im Kombinationsfeld entsprechen den Werten für ListIndex
ComboBox5.ListIndex = 0
End Sub


In welchem Bereich könnte bitte der Fehler liegen?

Danke


Josef


Bild


Betrifft: Ich nehme mal an, dies ist der Fehler... von: Josef
Geschrieben am: 03.04.2005 21:29:45

Hallo!

Nach längerem Herumtesten fiel mir folgendes auf:

Die Userform ist in einer Datei mit Namen DVP.
Weiters ist eine zweite Arbeitsmappe geöffnet.
Wenn jetzt diese zweite Arbeitsmappe aktiviert ist und ich im VBA Bereich bin, die Userform öffne, ist alles in Ordnung. Wenn ich jedoch in VBA die Datei DVP speichere und danach die Userform öffnen will.so erscheint der Fehler 424.

Und anscheinend deswegen, da beim speichern in der blauen Titelleiste die Datei von DVP.xls in die andere Mappe wechselt. Wenn ich danach die Userform aufrufe, so erhalte ich diesen Fehler.

Gäbe es da vielleicht eine Möglichkeit, dies irgendwie zu umgehen, da ich aus der Datei mit der Userform gerne ein Addin machen möchte?


Danke


Josef


Bild


Betrifft: Optimierung von: Ramses
Geschrieben am: 03.04.2005 21:45:21

Hallo

Oje,... also da kann man wirklich optimieren :-)

Diese Zeilen ersetzen deinen kompletten bisherigen Code


Private Sub UserForm_Initialize()
Dim i As Byte
If Frame1.Visible = True Then
    With Me.Combobox7
        For i = 1 To 21
            .AddItem Format(i, "00000")
        Next i
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    With Me.ComboBox9
        .AddItem "0"
        .AddItem "1"
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    End With
    Me.TextBox129 = Format(Date, "ddmmyy")
End If
If Frame13.Visible = True Then
    With Me.Combobox6
        For i = 1 To 9
            .AddItem Format(i, "00000")
        Next i
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    End With
    With Me.Combobox10
        For i = 1 To 100
            .AddItem i
        Next i
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    End With
    'ComboBox11
    With Me.Combobox11
        For i = 1 To 9
            .AddItem i
        Next i
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    End With
    'ComboBox12
    With Me.Combobox12
        For i = 1 To 8
            .AddItem i
        Next i
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    End With
    'ComboBox14
    With Me.Combobox14
        For i = 1 To 5
            .AddItem i
        Next i
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    End With
    'ComboBox15
    With Me.ComboBox15
        .AddItem "ES30   "
        .AddItem "ES50   "
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 1
    End With
    'ComboBox26
    With Me.Combobox26
        For i = 0 To 2
            .AddItem i
        Next i
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    End With
    'ComboBox27
    With Me.Combobox27
        For i = 1 To 9
            .AddItem i
        Next i
        .AddItem "0"
        .Style = fmStyleDropDownList
        .BoundColumn = 0
        .ListIndex = 0
    End With
    'ComboBox28
    For i = 28 To 31
        With Me.Controls("ComboBox" & i)
            .AddItem "ES30   "
            .AddItem "ES50   "
            .Style = fmStyleDropDownList
            .BoundColumn = 0
            .ListIndex = 1
        End With
    Next i
End If
'**************************************************************************************
'***********************************ComboBox Codes*************************************
'**************************************************************************************
'ComboBox1
With Me.Combobox1
    For i = 40 To 49
        .AddItem i
    Next i
    .Style = fmStyleDropDownList
    .BoundColumn = 0
    .ListIndex = 0
End With
'ComboBox2
With Me.Combobox2
    For i = 1 To 9
        .AddItem i
    Next i
    .Style = fmStyleDropDownList
    .BoundColumn = 0
    .ListIndex = 0
End With
'ComboBox3
With Me.Combobox3
    For i = 4 To 22
        .AddItem Format(i, "00")
    Next i
    .Style = fmStyleDropDownList
    .BoundColumn = 0
    .ListIndex = 1
End With
'ComboBox4
With Me.Combobox3
    For i = 1 To 12
        .AddItem Format(i, "00")
    Next i
    For i = 21 To 26
        .AddItem Format(i, "00")
    Next i
        For i = 91 To 94
        .AddItem Format(i, "00")
    Next i
    .Style = fmStyleDropDownList
    .BoundColumn = 0
    .ListIndex = 1
End With
'ComboBox5
With Me.Combobox5
    For i = 1 To 100
        .AddItem Format(i, "00000")
    Next i
    .Style = fmStyleDropDownList
    .BoundColumn = 0
    .ListIndex = 1
End With
End Sub


Das mit der nicht sichtbaren Combobox kann schon sein.
Fülle die Combobox doch erst, wenn du sie sichtbar machst.

Gruss Rainer


Bild


Betrifft: AW: Optimierung von: Josef
Geschrieben am: 03.04.2005 21:52:17

Hallo Ramses!

Besten Dank für Deine Mühe.

Ich wollte es jetzt gleich ausprobieren, bekam jedoch gleich den Fehlerhinweis
End If ohne If-Block.

Josef


Bild


Betrifft: AW: Optimierung von: Ramses
Geschrieben am: 03.04.2005 21:56:21

Hallo

ich habe das aus der Hand geschrieben, weil ich nicht das ganze UF nachbilden wollte.
Die Fehlermeldung ist übrigens falsch,... korrekt müsste es heissen "With-Block" ohne "End with" ;-)

If Frame1.Visible = True Then
With Me.Combobox7
For i = 1 To 21
.AddItem Format(i, "00000")
Next i
.Style = fmStyleDropDownList
.BoundColumn = 0
.ListIndex = 0
End With
With Me.ComboBox9
.AddItem "0"
.AddItem "1"
.Style = fmStyleDropDownList
.BoundColumn = 0
.ListIndex = 0
End With
Me.TextBox129 = Format(Date, "ddmmyy")
End If

Gruss Rainer


Bild


Betrifft: AW: Optimierung von: Josef
Geschrieben am: 03.04.2005 22:04:02

Hallo Rainer!
Herzlichen Dank für Deine Mühe und Deine Hilfe. Funktioniert bereits.
Jedoch den 424 er Fehler erhalte ich immer noch.

mir fiel jedoch folgendes auf:

Die Userform ist in einer Datei mit Namen DVP.
Weiters ist eine zweite Arbeitsmappe geöffnet.
Wenn jetzt diese zweite Arbeitsmappe aktiviert ist und ich im VBA Bereich bin, die Userform öffne, ist alles in Ordnung. Wenn ich jedoch in VBA die Datei DVP speichere und danach die Userform öffnen will.so erscheint der Fehler 424.

Und anscheinend deswegen, da beim speichern in der blauen Titelleiste die Datei von DVP.xls in die andere Mappe wechselt. Wenn ich danach die Userform aufrufe, so erhalte ich diesen Fehler.


Josef


Bild


Betrifft: AW: Optimierung von: Ramses
Geschrieben am: 03.04.2005 22:11:02

Hallo

du musst sicher stellen dass du das UF aus der richtigen Mappe aufrufst.
Nimm alternativ ein Hilfsmakro


Sub ShowMyUserform()
DeineUserform.Show
End Sub


von der anderen Mappe kannst du das dann aufrufen

Application.Run "DeinMappe.xls!ShowMyUserform"

Mehr kann ich von hier aus nicht beurteilen.
Höchstens noch dass du die Frames im Code anders ansprichst.
Anstelle von

If Frame1.Visible ...

If Me.Frame1.Visible...

Damit wird der Bezug richtig gesetzt

Gruss Rainer


Bild


Betrifft: AW: Optimierung von: Josef
Geschrieben am: 03.04.2005 22:24:29

Hallo Rainer!

Danke.

eine Frage noch:

Trifft dies auch zu,wenn die Userform in einem Addin wäre oder müßte ich da noch anders vorgehen?

Josef


Bild


Betrifft: AW: Optimierung von: Ramses
Geschrieben am: 03.04.2005 22:28:02

Hallo

auch in einem AddIn ist das so.

Gruss Rainer


Bild


Betrifft: DANKE von: Josef
Geschrieben am: 03.04.2005 22:30:28

Hallo Rainer!

Danke nochmals für alles.
Ich wünsche Dir noch einen angenehmen Abend.

Josef


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Laufzeitfehler 424"