Well, everything matches on boths sides of the VALUES clause, so it may be that you are having a problem because you are using a reserved word for a field name.

Date is a reserved word in just about every language I've ever heard of, so either (and this is preferable) change the field name, or, if you insist on sticking with using Date, you will need to put it in brackets.
VB Code:
  1. sSQL = "INSERT INTO users (UserId, FirstName, LastName, catID,[Date]) VALUES ("