Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Monatsabrechnung mit fortlaufenden Kalender
#21
Danke für eure Hilfe und Ideen. Ich habe nun eine Datei erstellt mit der es gut funktioniert. Nun habe ich noch ein kleines Problem, denn ich wollte alle Einträge löschen, damit man ein neue Jahr anfangen kann. Leider tut der Code nicht. Wer findet den Fehler, bzw. wo ist der Fehler?


Blatt Januar-Dez  Jahreszahl in E4

E4= 2016 wird in allen Blättern durch den Kalender gesteuert:=kalender(A2)

Zelle C6
Zelle H7
Zelle E6
Zelle E7
Zellen C13:E43
Zellen G13 mit H13 verbunden =G13 runter bis H43

von Jan-Dez sind die Zellen alle gleich.

Nun soll mittels VBA die Zellen, wo man einen Eintrag gemacht hat alle gelöscht werden, wenn man im Blatt Kalender =kalender(A2) die Jahreszahl ändert.
Nur funktioniert der Code nicht und ich bin im VBA nicht gut.

Code im Tabellenblatt Kalender

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address <> "$A$2" Then Exit Sub
    For i = 1 To Sheets.Count
        Select Case Worksheets(i).Name
            Case Is = "Januar", "Februar", "März", "April", "Mai", "Juni", _
                "Juli", "August", "September", "Oktober", "November", "Dezember"
                Worksheets(i).Range("C3:E43").ClearContents
                Worksheets(i).Range("G13:H43").ClearContents
            Case Else
                'no action
            End Select
        Next i
    For i = 1 To Sheets.Count
        Select Case Worksheets(i).Name
            Case Is = "Januar"
                Worksheets(i).Range("C6").ClearContents
                Worksheets(i).Range("E6").ClearContents
                Worksheets(i).Range("E7").ClearContents
                Worksheets(i).Range("H7").ClearContents
            Case Else
                'no action
            End Select
        Next i
End Sub
Antworten Top
#22
Hallo,

eine Änderung im Formelergebnis löst kein Change-Ereignis aus, verwende das Worksheet_Calculate()-Ereignis.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#23
Hab ich versucht, bringt aber Fehler beim Kompilieren
Wie würde der Code denn aussehen? Was muß ich genau ändern?
Antworten Top
#24
Hallo,

Code:
Private Sub Worksheet_Calculate()
   
    For i = 1 To Sheets.Count
        Select Case Worksheets(i).Name
            Case Is = "Januar", "Februar", "März", "April", "Mai", "Juni", _
                "Juli", "August", "September", "Oktober", "November", "Dezember"
                Worksheets(i).Range("C3:E43").ClearContents
                Worksheets(i).Range("G13:H43").ClearContents
            Case Else
                'no action
            End Select
        Next i
    For i = 1 To Sheets.Count
        Select Case Worksheets(i).Name
            Case Is = "Januar"
                Worksheets(i).Range("C6").ClearContents
                Worksheets(i).Range("E6").ClearContents
                Worksheets(i).Range("E7").ClearContents
                Worksheets(i).Range("H7").ClearContents
            Case Else
                'no action
            End Select
        Next i
End Sub
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#25
Danke Stefan,

leider wird der Januar und der März bei ändern der Jahreszahl im Kalender nicht gelöscht.
Auch C6, E6, E7 und H7 werden in keinem Monat gelöscht

Alle anderen Monate in C13-E43 sind OK
Im Anhang habe ich die Beispieldatei mal eingestellt. Vielleicht habe ich ja noch irgendwo einen Fehler. Der Code ist in der Tabelle Kalender, was ja doch richtig ist.

Danke


Angehängte Dateien
.xlsm   Beispieldatei.xlsm (Größe: 99,89 KB / Downloads: 10)
Antworten Top
#26
Hallo,

dann entferne mal die Leerzeichen hinter den Tabellennamen. Sieht man deutlich, wenn man die Namensliste im VBA-Editor durchsieht, überall liegt die Klammer am letzten Buchstaben an, nur bei Januar und März nicht!!!!!!! :47:
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#27
Hallo Edgar,

klappt nun. Danke
Kleiner Fehler, große Wirkung. Aud die Idee  wäre ich nie gekommen, dass es an den Leerzeichen liegt.
Nun habe ich alles was ich brauche.

Danke euch allen. Falls ich wieder mal etwas suche, weiß ich ja wo ich meine Fragen stellen kann.
LG Albertus
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste