I have the following Java code:I tried converting it to VBA myself, and got this:Code:public static void main(String [ ] args) { String isbn = "9781590387474"; if (isbn.length() == 13 && isbn.indexOf("978") == 0) { isbn = isbn.substring(3,12); int xsum = 0; for (int i = 0; i < 9; i++) { xsum += (10 - i) * Character.getNumericValue(isbn.charAt(i)); } xsum %= 11; xsum = 11 - xsum; String x_val = String.valueOf(xsum); switch (xsum) { case 10: x_val = "X"; break; case 11: x_val = "0"; break; } isbn += x_val; } System.out.println(isbn); }Unfortunately, it does not work.Code:Function UPCtoISBN(strUPCin As String) As String Dim strTemp As String If Len(strUPCin) = 13 And Left(strUPCin, 3) = "978" Then strTemp = Mid(strUPCin, 3, 10) Dim xsum As Integer xsum = 0 For x = 1 To 9 xsum = xsum + ((10 - x) * Mid(strTemp, x, 1)) Next x xsum = xsum Mod 11 xsum = 11 - xsum Select Case xsum Case 10 strTemp = strTemp & "X" Case 11 strTemp = strTemp & "0" End Select End If UPCtoISBN = strTemp End Function
Anyone willing to help fix it?
Thanks!




Reply With Quote