Intanto torniamo alla funzione Apici2. Questa dovrebbe solo raddoppiare gli apici e quindi si potrebbe chiamare Apici ed essere fatta solo dalla Replace visto che la prima linea non serve e l'asterisco aggiunto non ha senso. Quindi
Public Function Apici(ByVal pStringa As String) As String
Apici = Replace(pStringa, "'", "''")
End Function
Per il resto è ovvio ... se cerchi con LIKE '*' ottieni tutto ... ancora non ho capito quale sia il criterio della ricerca che vuoi usare ma dovresti studiare qualcosa di teorico, un minimo, prima di scrivere codice o usare SQL.