VBA wird nicht ausgeführt bzw nicht als Makro angezeigt in Excel

  • Excel

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von chiefhood.

    VBA wird nicht ausgeführt bzw nicht als Makro angezeigt in Excel

    Hallo,

    ich bin absoluter Newbie in Sachen VBA und muss eine Excel-Datei bearbeiten für ein Projekt.

    Aber der Code wird einfach nicht ausgeführt...habe Office 2003

    Die Makros werden nicht angezeigt...hoffe jemand kann mir helfen..

    Schon mal Danke!!!

    Hier der Code:

    Quellcode

    1. Sub Begrundung(x)
    2. Dim a As Range
    3. Dim Bereich As Range
    4. Set Bereich = GAEP.Cells(x, 9)
    5. For Each a In Bereich
    6. Set Pruef = GAEP.Cells(x, 7)
    7. If Pruef = Empty = False Then
    8. If a = Empty Then a = "Begründung fehlt!!!"
    9. Else
    10. GAEP.Cells(x, 9).Value = ""
    11. End If
    12. Next
    13. End Sub
    14. Private Sub Worksheet_Change(ByVal Target As Range)
    15. If Not Intersect(Target, Range("G25,G26,G27,G31,E32,E34,F35,E36")) Is Nothing Then
    16. GAEP.Begrundung (25)
    17. GAEP.Begrundung (26)
    18. GAEP.Begrundung (27)
    19. End If
    20. End Sub
    Du kannst im WorkSheet_Change-Ereignis beim ersten Befehl einen Breakpoint setzen.
    Wenn nach einer Feldänderungen dieser Breakpoint nicht angesprochen wird, sind Macros disabled.
    Das ist ein Sicherheitsaspekt. Abhilfe: office.microsoft.com/en-us/exc…s-to-run-HP001119579.aspx

    Wenn der Breakpoint aktiv wird, kannst du durchsteppen und nachschauen, wo dein Denkfehler ist.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Hallo!
    Und danke für die Antwort!
    jedoch funktionieren die Makros wenn zB. in Zeile 1 also: Sub Begrundung(x) die variable x weggelassen wird.
    bzw. in Zeile 15 dort ebenfalls nichts in die Klammern geschrieben wird...


    Makros sind soweit alle aktiviert(Einstellungen)
    Einfach im Singlestep durchgehen, dann merkst du ganz schnell, wo's klemmt.
    Ich tippe mal auf diese schnürsenkelöffnende Konstruktion

    chiefhood schrieb:

    If Pruef = Empty = False Then
    Vermutlich willst du damit folgendes ausdrücken

    Visual Basic-Quellcode

    1. If Not IsEmpty(Pruef) Then
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Hey,

    DANKE!! habe das so optimiert...und...habe die datei mit Office 2007 geöffnet und gespeichert...

    dann wieder in Office 2003 und siehe da...dann gings...

    Aber vielen Dank für eure Tipps! ;) werde mich mal wieder ans einlernen machen!!

    Bis Dann!!