none
Rückgabe von worksheet.delete macht Fehler RRS feed

  • Frage

  • Moin!

    Code (Excel 2010):

    Private Sub cmdDelete_Click()
       Dim ws As Worksheet
       Set ws = Application.ActiveSheet
       If ws.Delete = True Then
          '...code
       End If
    End Sub
    

    ich bekomme in der Zeile If ws.delete=true den Fehler

    "Fehler beim Kompilieren, Function oder Variable erwartet"

    Warum?
    Was mach ich falsch?

    Mittwoch, 5. Mai 2021 09:19

Antworten

Alle Antworten

  • Fehler beim Kompilieren, Funktion oder Variable erwartet

    Hallo,

    wie die Meldung schon klar sagt, für einen Vergleich im IF werden Werte erwartet, entweder aus einer Funktion oder Variable.

    .Delete() ist aber ein Methode (Sub), die keinen Wert liefert und man nichts zum Vergleichen hat. Entferne das IF/THEN


    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Mittwoch, 5. Mai 2021 10:13
  • .Delete() ist aber ein Methode (Sub), die keinen Wert liefert und man nichts zum Vergleichen hat.

    Danke Olaf. MS schreibt jedoch über die delete-Methode:

    "Wenn Sie für das Worksheet -Objekt aufgerufen wird, gibt die Delete -Methode einen booleschen Wert zurück, der false ist, wenn der Benutzer im Dialogfeld Abbrechen ausgewählt hat, oder true , wenn der Benutzer Deleteausgewählt hat."


    Mittwoch, 5. Mai 2021 11:25
  • Dann ist das ein Fehler in der Doku, Delete ist definitiv eine Sub, die keinen Wert zurück liefert.

    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Donnerstag, 6. Mai 2021 05:15