|    | 
     ▼レモン さん: 
>▼かめ さん: 
>>▼Gin_II さん: 
>>>>VBAのDAOで集合SQLの値を取得する書き方を教えてください。 
>>> 
>>>集合SQLの値とは? 
>>>OpenRecordset ではないということでしょうか? 
>> 
>>VBAで"select count(*) from t"の値を変数に格納したいのですが。 
>>書き方がよくわかりません。 
>>OpenRecordsetだと思うのですが。 
>> 
>>超初心者なのでよろしくお願いします。 
> 
> 
>Dim db       As DAO.Database 
>Dim rs       As DAO.Recordset 
>Set db = CurrentDb() 
> 
>strSQL1 = "" 
>strSQL1 = "" & "SELECT COUNT(*) as Kbn_Count FROM (SELECT FIELD2,FIELD3 FROM TBL_科目別 GROUP BY Field2,Field3) AS A" 
>strSQL1 = strSQL1 & " LEFT JOIN (SELECT CaseCode,CaseCode2 FROM TBL_区分マスタ) AS B" 
>strSQL1 = strSQL1 & " ON b.CaseCode=A.Field2 and B.CaseCode2=A.Field3" 
>strSQL1 = strSQL1 & " WHERE B.CaseCode IS NULL or B.CaseCode2 IS NULL" 
>   
>  Set rs = db.OpenRecordset(strSQL1, dbOpenDynaset) 
>   
>  If rs!Kbn_Count <> 0 Then 
>    rs.Close: Set rs = Nothing 
>    db.Close: Set db = Nothing 
>     
>    Exit Function 
>  End If 
> 
>はしょっただけですのですが・・・ 
>ですがカウントだけならDcount関数というのも在るのでそちらでもいいかと 
 
レモンさんありがとうございます。 
 
もう少し簡単な例でご説明願いないでしょうか 
 
たとえば、テーブルtのレコード数をメッセージ表示するような場合で 
VBAの中でcountの集合SQLを直接書く場合・・・ 
 
DAOを利用してVBAでSQLを書きそこで取得したテーブルtのレコード数を変数hに格納しmsgbox(h)として表示させたいのですが。 
 
よろしくお願いします。 
 
 | 
     
    
   |