I'd recommend still using the Select statement, as it will be quicker and take less memory.

Instead of opening a full table like this:
Code:
 RS11.Open "Needles", ConnectNeedles, adOpenKeyset, adLockPessimistic, adCmdTable
..put your SQL statement into a variable, and change the open line, like this:
Code:
dim strSQL as String
 strSQL = "SELECT * FROM Needles WHERE NeedleName = '" & Combo8.Text & "'" 
 RS11.Open strSQL, ConnectNeedles, adOpenKeyset, adLockPessimistic, adCmdText
(note that the .Update line is for writing and Edits you have made to the fields, so is not relevant where you have it)