投稿日 | : 2004/09/14(Tue) 14:11 |
投稿者 | : nanashi |
Eメール | : |
URL | : |
タイトル | : Re^3: mdb検索方法 |
> この方法を試したんですが、「型が一致しません」のエラーになってしまい、悩んでいるところです。
DAOは使ったこと無いので分かりませんが、このrsはDAOのRecordSetオブジェクトなんでしょうか?
もし参照設定でADOとDAOの両方を指定していた場合、優先順位が上にある方が使われます。
宣言する時は
Dim rs As DAO.Recordset
のようにする癖を付けて下さい。
ちなみに私ならADOでこんな感じ↓にしますね。
まァ、どういう風に使う関数なのか分からないので適当ですけど。
Private Function search(file As String, Pin As String, Symbol As String) As String
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strSQL As String
Dim sFlagmdb As String
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
With cn
.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\seishiki.mdb"
.Open
End With
'選択クエリーを設定
strSQL = "select count(*) as [num] " & _
"from search " & _
"where([ファイル名] = '" & Left$(file, 2) & "' and " & _
"[ピン数] = " & Pin & " and " & _
"[シンボル名1] = '" & Symbol & "')"
With rs
.Open strSQL, cn, adOpenStatic, adLockReadOnly
sFlagmdb = !num
.Close
End With
cn.Close
Set rs = Nothing
Set cn = Nothing
search = sFlagmdb
End Function