Excelのワークシートからデータを取得する方法
◆概要
このページは、AccessでExcelのワークシートからデータを取得する方法について記載しています。
◆DDERequest関数
DDERequest関数を使って、開いているDDEサーバーアプリケーションの情報を要求することができます。
すでに開いているExcelのワークシートからAccessでデータを取得するには、「DDERequest(ch,セル番地)」と記述し、指定したセル番地の値を取り込むことができます。
◆使用例
Cドライブのルートにある、Excelファイル「test.xls」の2行目のデータをAccessに取り込み、メッセージボックスで表示します。
Function GetExcelData() Dim ch As Variant Dim sl As Variant Dim i As Integer Dim data(6) As Variant On Error GoTo err1 ' Excelファイル「test.xls」とDDE変換を開始する ch = DDEInitiate("Excel", "c:\test.xls") ' 変数dataに2行目1列から6列のデータを代入する For i = 1 To 6 data(i) = DDERequest(ch, "R2C" & i) Next ' 変数dataの値をメッセージボックスに表示 MsgBox (data(1) & data(2) & data(3) & data(4) & data(5) & data(6)) ' DDEチャンネルを閉じる DDETerminate (ch) Exit Function err1: If Err = 282 Then ' Excelを実行する ' Excelを実行する sl = Shell("C:\Program Files\Microsoft Office\OFFICE11\Excel.Exe") ' ExcelとのDDE変換を開始する ch = DDEInitiate("Excel", "system") ' Excelファイルを開く DDEExecute ch, "[open(""c:\test.xls"")]" Resume Else MsgBox (Error) End If End Function
▼ページトップに戻る