Office: Laufzeitfehler '424' Objekt erforderlich

Helfe beim Thema Laufzeitfehler '424' Objekt erforderlich in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Bitte oben den Code Ignorieren Private Sub cmbPicture1_Click() Dim strPfad As Variant strPfad = Application.GetOpenFilename If strPfad <> False Then... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von User, 18. August 2018.

  1. jnbart Neuer User

    Laufzeitfehler '424' Objekt erforderlich


    Bitte oben den Code Ignorieren

    Code:
    Private Sub cmbPicture1_Click()
    
    Dim strPfad As Variant
    strPfad = Application.GetOpenFilename
    If strPfad <> False Then
      txtPicture1 = strPfad
    Else
    End If
    
    End Sub
    Private Sub cmbPicture2_Click()
    
    Dim strPfad As Variant
    strPfad = Application.GetOpenFilename
    If strPfad <> False Then
      txtPicture2 = strPfad
    Else
    End If
    
    End Sub
    
    
    Private Sub cmdCancel_Click()
        'Schließt Formular'
        
        Unload Me
    End Sub
    
    Private Sub cmdApply_Click()
        'Schließt Formular und speichert Daten'
        
        Dim intErsteLeereZeile As Long
        
        intErsteLeereZeile = Worksheets("Data").Cells(Rows.Count, 1).End(xlUp).Row + 1
        
        Worksheets("Data").Cells(intErsteLeereZeile, 1).Value = Me.txtNumber.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 2).Value = Me.txtDate.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 7).Value = Me.cobTicker.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 8).Value = Me.cobStrategy.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 9).Value = Me.cobTrend.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 10).Value = Me.cobType.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 11).Value = Me.cobDirection.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 12).Value = Me.cobLot.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 13).Value = Me.cobOrder.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 14).Value = Me.txtTimeOpen.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 15).Value = Me.txtPriceOpen.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 16).Value = Me.txtStoploss.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 17).Value = Me.txtTimeClose.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 18).Value = Me.txtPriceClose.Value
            If Trim(txtPicture1.Text) <> "" Then
                Worksheets("Data").Hyperlinks.Add Anchor:=Worksheets("Data").Cells(intErsteLeereZeile, 20), Address:=txtPicture1.Text, TextToDisplay:=txtPicture1.Text
            End If
            If Trim(txtPicture2.Text) <> "" Then
                Worksheets("Data").Hyperlinks.Add Anchor:=Worksheets("Data").Cells(intErsteLeereZeile, 21), Address:=txtPicture2.Text, TextToDisplay:=txtPicture2.Text
            End If
        Worksheets("Data").Cells(intErsteLeereZeile, 31).Value = Me.txtDescription.Value
        
        Unload Me
    End Sub
    
    
    Private Sub cobStrategy_Change()
    
    End Sub
    
    Private Sub Label10_Click()
    
    End Sub
    
    Private Sub lblNumber_Click()
    
    End Sub
    
    Private Sub lblStrategy_Click()
    
    End Sub
    
    Private Sub txtDescription_Change()
    
    End Sub
    
    Private Sub txtNumber_Change()
    
    End Sub
    
    Private Sub txtPicture1_Click()
    
    End Sub
    
    Private Sub txtTimeClose_Change()
    
    End Sub
    
    Private Sub UserForm_Initialize()
    'Werte bei Aufruf des Formulars eintragen'
    
    Dim intErsteLeereZeile As Long
     
        intErsteLeereZeile = Worksheets("Data").Cells(Rows.Count, 1).End(xlUp).Row
    
    With Me
        .txtDate.Value = Date
        .txtTimeClose.Value = Time
        .txtTimeOpen.Value = Time
        .txtNumber.Value = intErsteLeereZeile
    End With
    
    With frmdashboard.cobTicker
        .AddItem "FGBL"
        .AddItem "ES"
    End With
    
    With frmdashboard.cobStrategy
        .AddItem "WAP"
        .AddItem "UNI"
        .AddItem "HOLE"
        .AddItem "WAP & UNI"
        .AddItem "UNICORN & HOLE"
        .AddItem "HOLE & WAP"
        .AddItem "WAP & UNI & HOLE"
        .AddItem "LUDWIG-LEVELS"
        
    End With
    
    With frmdashboard.cobTrend
        .AddItem "WITH TREND"
        .AddItem "AGAINST TREND"
        .AddItem "RANGE"
        
    End With
    
    With frmdashboard.cobType
        .AddItem "SCALP"
        .AddItem "NO SCALP"
        
    End With
    
    With frmdashboard.cobDirection
        .AddItem "SELL"
        .AddItem "BUY"
    End With
    
    With frmdashboard.cobOrder
        .AddItem "LIMIT"
        .AddItem "MARKET"
        .AddItem "STOP"
    End With
    
    With frmdashboard.cobLot
        .AddItem "1"
        .AddItem "2"
        .AddItem "3"
        .AddItem "4"
        .AddItem "5"
        .AddItem "6"
        .AddItem "7"
        .AddItem "8"
        .AddItem "9"
        .AddItem "10"
    End With
    
    End Sub
    
     
  2. Exl121150 Erfahrener User
    Hallo,

    wenn du ernsthaft erreichen willst, dass dir geholfen wird, wirst du nicht umhin kommen, die ganze Userform (VBA-Code und Steuerelemente der Benutzeroberfläche) hochzuladen.
    Mit schönen Bildchen ist niemand gedient. Denn genau hinter diesen (d.h. in den Eigenschaften der Steuerelemente) verbirgt sich mit hoher Wahrscheinlichkeit das Problem.
     
    Exl121150, 26. März 2022
    #17
  3. jnbart Neuer User
    Hi,

    ich kann die Datei nicht hochladen - wenn ich nur die Userform exportiere ist es das falsche Format und wenn ich die Excel Datei hochladen will ist die Datei zu groß.

    Daher habe ich sie hier hochgeladen:
    3.13 MB folder on MEGA
     
  4. Exl121150 Erfahrener User

    Laufzeitfehler '424' Objekt erforderlich

    Hallo Jan,

    du hast in deiner Userform 2 CommandButtons mit der Aufschrift "1" bzw. "2" mit Namen "cmdPicture1" und "cmdPicture2". Für diese beiden Buttons hast du 2 Click-Prozeduren ins VBA-Formularmodul eingefügt ("cmdPicture1_Click()" und "cmdPicture2_Click()"). In beiden Prozeduren wird ein Datei-Such-Dialogfenster geöffnet, wobei das Resultat der Dateisuche an eine Variable vom Typ Variant zu übergeben ist. Bei dir sind das die beiden (nicht deklarierten) Variablen "txtPicture1" und "txtPicture2", die vortäuschen vom Typ String zu sein oder aber Textbox-Objektvariablen der Userform zu sein.
    So weit so (nicht so) gut.
    In der Click-Prozedur des CommandButtons "cmdApply" verwendest du die beiden (hoffentlich mit Werten belegten) Variablen "txtPicture1" und "txtPicture2", wobei du so tust, als ob sie jetzt plötzlich Objektnamen für TextBoxes der Userform wären, indem du sie mit ihrer (natürlich nicht existierenden) Eigenschaft "Text" (txtPicture1.Text bzw. txtPicture2.Text) aufrufst - was zwingend zum Fehler 424 führen muss, denn schließlich enthalten die beiden Variant-Variablen bestenfalls nur Strings (nämlich die ausgewählten Dateipfade+Namen).

    Maßnahmen zur Abhilfe:
    1) Ganz wichtig ist es, am Anfang jeden VBA-Moduls die Compiler-Anweisung "Option Explicit" einzufügen. Dadurch müssen alle Variablen vor ihrer Verwendung deklariert werden (mit ihren Typen). Es werden dadurch auch unbeabsichtigte Tippfehler bei Variablennamen entdeckt.
    2) Deklaration auf Modulebene der beiden Dateipfad-Variablen "txtPicture1" und "txtPicture2" als Variant (oder eventuell als String)
    3) Entfernung der ".Text"-Eigenschaft an den Stellen, an denen "txtPicture1" und "txtPicture2" verwendet werden innerhalb cmdApply_Click-Prozedur.

    Nachfolgend der sonst unveränderte VBA-Code der Userform:
    Code:
    Option Explicit
    
    Private txtPicture1 As Variant 'oder: Private txtPicture1 As String
    Private txtPicture2 As Variant 'oder: Private txtPicture2 As String
    
    Private Sub cmbPicture1_Click()
    
       Dim strPfad As Variant
      
       strPfad = Application.GetOpenFilename
       If strPfad <> False Then
         txtPicture1 = strPfad
       Else
       End If
    
    End Sub
    Private Sub cmbPicture2_Click()
    
       Dim strPfad As Variant
       strPfad = Application.GetOpenFilename
       If strPfad <> False Then
         txtPicture2 = strPfad
       Else
       End If
    
    End Sub
    
    
    Private Sub cmdCancel_Click()
        'Schließt Formular'
      
        Unload Me
    End Sub
    
    Private Sub cmdApply_Click()
        'Schließt Formular und speichert Daten'
      
        Dim intErsteLeereZeile As Long
      
        intErsteLeereZeile = Worksheets("Data").Cells(Rows.Count, 1).End(xlUp).Row + 1
      
        Worksheets("Data").Cells(intErsteLeereZeile, 1).Value = Me.txtNumber.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 2).Value = Me.txtDate.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 7).Value = Me.cobTicker.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 8).Value = Me.cobStrategy.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 9).Value = Me.cobTrend.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 10).Value = Me.cobType.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 11).Value = Me.cobDirection.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 12).Value = Me.cobLot.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 13).Value = Me.cobOrder.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 14).Value = Me.txtTimeOpen.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 15).Value = Me.txtPriceOpen.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 16).Value = Me.txtStoploss.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 17).Value = Me.txtTimeClose.Value
        Worksheets("Data").Cells(intErsteLeereZeile, 18).Value = Me.txtPriceClose.Value
        If Trim(txtPicture1) <> "" Then
           Worksheets("Data").Hyperlinks.Add Anchor:=Worksheets("Data").Cells(intErsteLeereZeile, 20), Address:=txtPicture1.Text, TextToDisplay:=txtPicture1.Text
        End If
        If Trim(txtPicture2) <> "" Then
           Worksheets("Data").Hyperlinks.Add Anchor:=Worksheets("Data").Cells(intErsteLeereZeile, 21), Address:=txtPicture2.Text, TextToDisplay:=txtPicture2.Text
        End If
        Worksheets("Data").Cells(intErsteLeereZeile, 31).Value = Me.txtDescription.Value
      
        Unload Me
    End Sub
    
    
    Private Sub Label10_Click()
    
    End Sub
    
    Private Sub txtPicture1_Click()
    
    End Sub
    
    Private Sub UserForm_Initialize()
    'Werte bei Aufruf des Formulars eintragen'
    
    Dim intErsteLeereZeile As Long
     
        intErsteLeereZeile = Worksheets("Data").Cells(Rows.Count, 1).End(xlUp).Row
    
    With Me
        .txtDate.Value = Date
        .txtTimeClose.Value = Time
        .txtTimeOpen.Value = Time
        .txtNumber.Value = intErsteLeereZeile
    End With
    
    With frmdashboard.cobTicker
        .AddItem "FGBL"
        .AddItem "ES"
    End With
    
    With frmdashboard.cobStrategy
        .AddItem "WAP"
        .AddItem "UNI"
        .AddItem "HOLE"
        .AddItem "WAP & UNI"
        .AddItem "UNICORN & HOLE"
        .AddItem "HOLE & WAP"
        .AddItem "WAP & UNI & HOLE"
        .AddItem "LUDWIG-LEVELS"
      
    End With
    
    With frmdashboard.cobTrend
        .AddItem "WITH TREND"
        .AddItem "AGAINST TREND"
        .AddItem "RANGE"
      
    End With
    
    With frmdashboard.cobType
        .AddItem "SCALP"
        .AddItem "NO SCALP"
      
    End With
    
    With frmdashboard.cobDirection
        .AddItem "SELL"
        .AddItem "BUY"
    End With
    
    With frmdashboard.cobOrder
        .AddItem "LIMIT"
        .AddItem "MARKET"
        .AddItem "STOP"
    End With
    
    With frmdashboard.cobLot
        .AddItem "1"
        .AddItem "2"
        .AddItem "3"
        .AddItem "4"
        .AddItem "5"
        .AddItem "6"
        .AddItem "7"
        .AddItem "8"
        .AddItem "9"
        .AddItem "10"
    End With
    
    End Sub
    
     
    Exl121150, 28. März 2022
    #19
  5. jnbart Neuer User
    Ganz herzlichen Dank Exl121150

    Entfernung der ".Text"-Eigenschaft hat schon geholfen

    Danke
     
Thema:

Laufzeitfehler '424' Objekt erforderlich

Die Seite wird geladen...
  1. Laufzeitfehler '424' Objekt erforderlich - Similar Threads - Laufzeitfehler '424' Objekt

  2. Excel VBA Laufzeitfehler 424 Objekt erforderlich

    in Microsoft Excel Hilfe
    Excel VBA Laufzeitfehler 424 Objekt erforderlich: Hallo zusammen, ich habe schon verschiedene Antworten zum Laufzeitfehler 424 gefunden, komme aber leider damit doch irgendwie nicht weiter (bin absoluter VBA-Neuling). Folgendes Makro habe ich...
  3. Laufzeitfehler "424" Objekt erforderlich Selenium VBA

    in Microsoft Excel Hilfe
    Laufzeitfehler "424" Objekt erforderlich Selenium VBA: Hallo Zusammen, ich möchte mithilfe von Selenium in VBA eine Tabelle auf einer Webseite in eine Excel Tabelle kopieren. Allerdings bekomme ich den Fehler "Laufzeitfehler "424" Objekt...
  4. Laufzeitfehler 424: Objekt erforderlich seit Umstellung auf O365

    in Microsoft Excel Hilfe
    Laufzeitfehler 424: Objekt erforderlich seit Umstellung auf O365: Hallo zusammen, ich habe von einem Arbeitskollegen mal diese Excel bekommen um mir etwas Arbeit zu ersparen. Ich bin nun umgestiegen auf M365 und plötzlich funktioniert die Excel nicht mehr....
  5. hin und wieder Laufzeitfehler 424 Objekt erforderlich

    in Microsoft Excel Hilfe
    hin und wieder Laufzeitfehler 424 Objekt erforderlich: Hallo, hab ein Makro das Daten von einer Website ausliest und in ein Excel 2013 Tabellenblatt schreibt. Dies dauert ca. 2 Minuten und funktioniert in 9 von 10 Fällen einwandfrei. Doch hin und...
  6. Laufzeitfehler 424 Objekt erforderlich

    in Microsoft Excel Hilfe
    Laufzeitfehler 424 Objekt erforderlich: Hallo, ich habe letzte Woche mit VBA angefangen, daher bin ich noch ein ziemlicher Neuling. Kann mir einer sagen, warum ich an der Stelle (Blau markiert) immer den Laufzeitfehler (424- Objekt...
  7. Laufzeitfehler 424

    in Microsoft Excel Hilfe
    Laufzeitfehler 424: Guten Morgen Allerseits, ich bastle einen Elektronischem Stundenzettel. Hierfür habe ich, zum anlegen neuer- und vorhandener "Benutzer" eine UserForm erstellt. Sobald ich diese jedoch starten...
  8. Laufzeitfehler '424': Objekt erforderlich

    in Microsoft Access Hilfe
    Laufzeitfehler '424': Objekt erforderlich: Hallo zusammen, ich habe ein Riesenproblem mit einem Fehler, der vermutlich durch das Crashen der Access-DB verursacht wurde. Es zwei Mal jeweils nach einem Crash der DB aufgetaucht. Meine...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden