12桁の数字で1の位がモジュラス11ウエイト2〜7のチェックデジットに
なっていて、そのデータが正しいかどうか調べるコードを書きましたが、
@の照合が機能しません。ご指導よろしくお願いします。

Private Sub Worksheet_Change(ByVal Target As Range)

Dim i As Variant, s As Variant, checkdigit_m11 As Variant

For i = 0 To Len(Cells(1, 1)) - 2

s = s + Mid(Cells(1, 1), Len(Cells(1, 1)) - 1 - i, 1) * (i Mod 6 + 2)

Next

If s Mod 11 <= 1 Then
checkdigit_m11 = 0
Else
checkdigit_m11 = 11 - s Mod 11
End If

Cells(2, 1) = checkdigit_m11

'@チェックデジットの照合

If Right(Cells(1, 1), 1) = checkdigit_m11 Then
MsgBox ("OK!")
End If


End Sub