Isso é bem simples, use uma condição for loop
com if
como essa -
Sub test()
For Each c In Range("A:A")
If c <> 0 And c.Offset(, 1) <> 0 Then
c.Value = 1
End If
Next
End Sub
Você pode alterar o intervalo para ajustar seus dados ou pode tentar obter o usedrange
. Eu não entendo muito bem sua segunda parte.