folgendes Poblem: ich habe zwei Spalten die zusammengehören, einmal die Noten und einmal die jeweiligen ECTS Punkte. Diese Punkte sorgen für andere Gewichtungen der Noten (Generelle Aufgabe ist den Notendurchschnitt berechnen). Dabei gibt es eine Vielzahl von Fächern/Modulen wobei nicht jedes vom Excel Sheet User belegt wurde. Das Programm muss also erkennen wo eine Note eingetragen wird bzw. drinne steht.
Der Code bisher sieht wie folgt aus:
Sub NoteBerechnen()
Dim Anzahlschwerpunkt As Double
Dim Zelle As Variant
Zelle = 0
Anzahlschwerpunkt = 0
For Each Zelle In Range("D20:D73")
If Zelle.Value = 3 Then
Anzahlschwerpunkt = Anzahlschwerpunkt + 0.5
ElseIf Zelle.Value = 6 Then
Anzahlschwerpunkt = Anzahlschwerpunkt + 1
ElseIf Zelle.Value = 9 Then
Anzahlschwerpunkt = Anzahlschwerpunkt + 1.5
ElseIf Zelle.Value = 12 Then
Anzahlschwerpunkt = Anzahlschwerpunkt + 2
ElseIf Zelle.Value = 0 Then
Anzahlschwerpunkt = Anzahlschwerpunkt + 0
End If
Next Zelle
Debug.Print Anzahlschwerpunkt
End Sub
Der Code tut bisher ja nichts anderes als die Werte in den Zellen D20:D73 abzufragen und dabei je nach Punkten eine andere "Anzahl" zu verteilen bzw. Gewichtung je nach Eintrag in Zeile. Er tut das jedoch für jeden Eintrag. Da die Punkte immer eingetragen sind nur die Noten aber nicht, weis ich nicht wie ich VBA nun erklären soll, dass er den Code nur laufen lassen soll, wenn eine Note in C20:C73 eingetragen ist und wenn dort keine eingetragen ist (bzw. eine null dort steht (habe ich so festgelegt)) er zur nächsten Zeile weitergehen soll und wieder prüfen soll.