Bom dia pessoal, convertir essa função do C# para vba ele funciona perfeitamento no excel e access porem estou tentendo usar ela no vb.net editor VISUAL STUDIO 2013, aparece o erro conforme a imagem enexo, alguem consegue corrigir esse erro; Function crc_ccitt_ffff(strParam As String) As String Const CRC_POLY_CCITT As Long = &H1021& Const CRC_START_CCITT_FFFF As Long = &HFFFF& Dim crc As Long, b() As Byte, c As Long, i As Long, j As Long Dim crc_tabccitt(0 To 255) As Long For i = 0 To 255 crc = 0 c = i * 256 For j = 0 To 7 If (crc Xor c) And 32768 Then crc = (crc * 2) Xor CRC_POLY_CCITT Else crc = crc * 2 End If c = c * 2 Next j crc_tabccitt(i) = crc Next i b = strParam crc = CRC_START_CCITT_FFFF For i = 0 To UBound(b) Step 2 crc = (crc * 256) Xor crc_tabccitt(((crc \ 256) Xor b(i)) And 255) crc = ((crc \ 65536) * 65536) Xor crc Next i crc_ccitt_ffff = Hex(crc) End Function
Calculo do CRC
em .NET
Postado
Bom dia pessoal, convertir essa função do C# para vba ele funciona perfeitamento no excel e access
porem estou tentendo usar ela no vb.net editor VISUAL STUDIO 2013, aparece o erro conforme a imagem enexo, alguem consegue corrigir esse erro;
Function crc_ccitt_ffff(strParam As String) As String
Const CRC_POLY_CCITT As Long = &H1021&
Const CRC_START_CCITT_FFFF As Long = &HFFFF&
Dim crc As Long, b() As Byte, c As Long, i As Long, j As Long
Dim crc_tabccitt(0 To 255) As Long
For i = 0 To 255
crc = 0
c = i * 256
For j = 0 To 7
If (crc Xor c) And 32768 Then
crc = (crc * 2) Xor CRC_POLY_CCITT
Else
crc = crc * 2
End If
c = c * 2
Next j
crc_tabccitt(i) = crc
Next i
b = strParam
crc = CRC_START_CCITT_FFFF
For i = 0 To UBound(b) Step 2
crc = (crc * 256) Xor crc_tabccitt(((crc \ 256) Xor b(i)) And 255)
crc = ((crc \ 65536) * 65536) Xor crc
Next i
crc_ccitt_ffff = Hex(crc)
End Function