First, the problem you are having is that you put the variable name in a string literal. So the SQL was actually trying to find the literal string "@Letter%". You need to omit the single quotes around the variable name. Of course, then you can't put the % wildcard in the query, therefore...
I'd recommend sticking with the SqlCommand object instead of building the SQL dynamically. You should be able to just add a "%" to the end of the value entered to allow the wildcard.
Dim InitialCommand As Data.SqlClient.SqlCommand = New Data.SqlClient.SqlCommand( _
"select pkclient,ClientName,Active,City, State from client Where ClientName Like @Letter")
VarLetter.Value = String.Format("{0}%", "A")
-
Peter