Office: (Office 365) Komplimentierunsfehler versionsabhängig

Helfe beim Thema Komplimentierunsfehler versionsabhängig in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen. Ich hoffe man kann mir hier helfen. Ich habe einen Code in Excel der bei einigen Rechner Läuft aber bei anderen den... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von ASNCM, 26. Juli 2023.

  1. ASNCM Neuer User

    Komplimentierunsfehler versionsabhängig


    Hallo zusammen.

    Ich hoffe man kann mir hier helfen.
    Ich habe einen Code in Excel der bei einigen Rechner Läuft aber bei anderen den Komplimentierungsfehler in ausgeblendeten Modul auslöst.
    Hiermit wird das USEForm aufgerufen:

    Sub UFSheetAufrufen()
    'Prüfen ob Userform geöffnet ist
    If UfSheets.Visible = True Then
    'userForm Schließen
    Unload UfSheets
    Else
    'userForm öffnen
    UfSheets.Show 0
    End If
    End Sub


    Hier bleibt der dann stehen:

    Private Sub lbSheets_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    'Ausgewähltes tabellenblatt Sichbar machen
    Worksheets(lbSheets.List(lbSheets.ListIndex)).Visible = True
    'Ausgewähltes tabellenblatt aktivieren
    Worksheets(lbSheets.List(lbSheets.ListIndex)).Activate
    'Alle Tabellenblätter verstecken ausser das Atibe Blatt
    For Each wks In ActiveWorkbook.Worksheets
    If wks.Name <> ThisWorkbook.ActiveSheet.Name Then
    wks.Visible = xlSheetVeryHidden
    End If
    Next
    'Userform schließen
    Unload Me
    End Sub


    Habe ich die Chance den Code so umzuschreiben, dass dieser egal auf welchen Versionen läuft ?
    Danke für die Hilfe.
    Markus
     
    ASNCM, 26. Juli 2023
    #1
  2. ASNCM Neuer User
    Also an einem anderen Rechner kennt er die Methode wks nicht.
    Kann man das anpassen ?
     
    ASNCM, 26. Juli 2023
    #2
  3. Exl121150 Erfahrener User
    Hallo,

    ich wusste nicht, dass man bei Computern auch schon auf Kompliment(ierungs)fehler achten muss - ich dachte eher an Fehler zur Kompilierzeit.

    Diese Methode gibt es prinzipiell nicht. Mit wks wird an dieser Codestelle eine Worksheet-Objektinstanz bezeichnet.
    Wird schlampig programmiert, können plötzlich nicht deklarierte Variablen auftauchen. Das sollte man prinzipiell vermeiden, denn was soll so ein armer Compiler an einer solchen Stelle machen. Der VBA-Compiler setzt in solchen Fällen eine Variable vom Typ Variant ein, obwohl es in diesem Falle eine Variable vom Typ Worksheet sein sollte.

    Also korrekt müsste der Code für die zweite Codepassage beginnen (aber ohne den Code getestet zu haben):
    Private Sub lbSheets_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Dim wks As Worksheet
    'Ausgewähltes tabellenblatt Sichbar machen
    Worksheets(lbSheets.List(lbSheets.ListIndex)).Visible = True
    '...
    '...usw.
     
    Exl121150, 26. Juli 2023
    #3
Thema:

Komplimentierunsfehler versionsabhängig

Die Seite wird geladen...
  1. Komplimentierunsfehler versionsabhängig - Similar Threads - Komplimentierunsfehler versionsabhängig

  2. Stoppen von Makro bei versionsabhängigen Kompilierungsfehler vermeiden

    in Microsoft Access Hilfe
    Stoppen von Makro bei versionsabhängigen Kompilierungsfehler vermeiden: Hallo, folgender Code läuft bei mir unter Access 2010 fehlerfrei, aber führt unter Accesss 2003 zur Meldung "Fehler beim Kompilieren: Methode oder DAtenobjekt nicht gefunden.": Code:...
  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