Ok I re-created the blueprints and its behavior is as I expected to be. Anyway, I added OnActorBeginOverlap.AddDynamic(this, &AHealth::OnPickup); in the constructor and
void AHealth::OnPickup(AActor* OtherActor, UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult)
{
GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, FString::Printf(TEXT("on actor begin overlap works!")));
}
In the function OnPickup().
Now, I get 2 errors:
Unreal Engine:
Visual Studio:

