• 締切済み

ACCESS2000で作成したマクロ

ACCESS2000で作成した抽出マクロをそのままコピーするなどしてエクセルで使用することは可能でしょうか?もしできるならやり方をおしえてください。

みんなの回答

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.3

mdbファイルを をExcelを開くには 参照だけなら、こんな塩梅でも・・ご参考までに Sheetのイベントで処理しています。 Private Sub Worksheet_Change(ByVal Target As Range)   Dim cn As Object   Dim rs As Object   Dim strSql As String   Dim i As Long, j As Long      If Target.Address <> "$A$1" Then Exit Sub      Rows("3:3").Select   Range(Selection, Selection.End(xlDown)).Select   Selection.ClearContents   Range("A1").Select   Set cn = CreateObject("ADODB.Connection")   Set rs = CreateObject("ADODB.Recordset")   cn.Open "Driver={Microsoft Access Driver (*.mdb)};" _     & "DBQ=c:\DB1.mdb;"   'c:\DB1.mdb は適宜変更を      strSql = "select * from 施設台帳テーブル" _       & " where 施設名 like '%" & Target.Value & "%' order by 施設名"   rs.Open strSql, cn, 0, 1      For j = 0 To rs.fields.Count - 1     Cells(2, j + 1) = rs.fields(j).Name   Next      Application.ScreenUpdating = False '  Range("A3").CopyFromRecordset rs 'なぜか不安定   Do Until rs.EOF     i = i + 1     For j = 0 To rs.fields.Count - 1       Cells(i + 2, j + 1) = rs.fields(j)     Next     rs.movenext   Loop   Application.ScreenUpdating = True      rs.Close: Set rs = Nothing   cn.Close: Set cn = Nothing End Sub

dmx_hiro
質問者

お礼

ご回答ありがとうございました!!早速、参考にさせて頂きます。

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.2

> テキストボックスに入力した施設名(含む文字)をコマンドボタンをクリックする > ことで数あるデータより抽出される(該当するデータのある行のみ残り、他は消える)感じです。 Excelのフィルタ機能を使えばいいのでは? テキストボックスとかコマンドボタンとかが必要なんですか?

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.1

> ACCESS2000で作成した抽出マクロをそのままコピーするなどしてエクセルで使用することは可能でしょうか? 抽出マクロとは? クエリを実行させるマクロってことでしょうか? とりあえず、AccのマクロをExcelで使うことは無理です。 近いことであれば、Excelの機能を使ってできるかもしれません。 Accessのことを忘れて、何がしたいのか、具体的に説明してみては?

dmx_hiro
質問者

お礼

早速のご回答ありがとうございます。エクセルで作成した施設台帳(施設名・住所・電話番号・その他情報等)のデータが千件程度あります。その中から欲しいデータを施設名から引っ張り出すというものを作成できたらと思っております。イメージとしてはテキストボックスに入力した施設名(含む文字)をコマンドボタンをクリックすることで数あるデータより抽出される(該当するデータのある行のみ残り、他は消える)感じです。ACCESSを使い、このエクセルデータとリンクさせて抽出させるシステムを完成させたのですがACCESSの導入されていないパソコンで使用できず、ランタイムの入手もできなかったのでエクセルで同じようなものを作成したいと思っております。

関連するQ&A