Verdiğiniz örnekte A hücresi aynen dediğiniz şekilde çalışıyor. "Hata" dediğiniz şey makro uyarı seviyesi ile ilgilidir. Makro seviyesini düşürerek açarsanız çalıştığını göreceksiniz.
Araçlar/Makro/Güvenlik/Düşük
Kullanılan kodlar da aşağıda verilmiştir.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$" & Target.Row Then
kelime = Replace(Target.Value, "i", "İ")
kelime = Replace(kelime, "ı", "I")
Target.Value = StrConv(kelime, vbUpperCase)
End If
End Sub
İnadına, ille de Accesstr.net...