Hi Folks

I have created a cell with a dynamic dropdown-list via data validation, which changes its range, depending on the value in another static dropdown-list.(works fine)

Appearently it is a common problem, that the cell keeps the last value that was selected from the previous range. So I have to manually select the dropdown and select one of the now available values.
This seems to happen because the change of range happens due to mouse-selection and not via direct input. A humongous paperchase on goolge concluded, that I'd have to use some VBA to bypass this.

So what I basically want is for the dynamic-list-cell to be cleared if the Value of the static list changes.
How I thought to achieve this:

Cell1 = Dropdown list(static) [Value1, Value2, Value3]
Cell2 = Dropdown list(dynamic)
Cell3 = Variable Value

Pseudo code:
If Cell3 unequal to Cell1 then
1. clear Cell2;
2. Copy Value of Cell1 into Cell3 //So the condition is no longer met until Cell1 is changed
else do nothing

I'm absolutely new to VBA but I tried this:

Private Sub Worksheet_Calculate()
If Range("A3").Value <> Range("A1").Value Then
    Range("A2").Select
    Selection.ClearContents
    Range("A3").Value = Range("A1").Value
End If
End Sub
The debugger marks the second row yellow.

Can someone make this work please?