アクセストップページ VBAでテーブルやクエリのレコードをエクセルに入力

VBAでテーブルやクエリのレコードをエクセルに入力

menu
VBAでテーブルやクエリのレコードをエクセルに入力する手順は以下の通りです。

1 エクセルオブジェクトを生成する。

2 ADOまたはDAOなどでレコードにアクセスする。

3 1レコードごとエクセルに入力する。

4 エクセルを保存し、オブジェクトを終了、開放する。


以下はVBAでテーブルやクエリのレコードをエクセルに入力する一例です。

Dim oApp As Object
Set oApp = CreateObject("Excel.Application")
Dim xlRange As Excel.Range
Dim objBook 'ExcelBook
Dim objSheet

エクセルオブジェクトを宣言し、生成する。

'指定のエクセルファイルを開く
oApp.Workbooks.Open filename:=pas & filename

Set objBook = oApp.ActiveWorkbook

'エクセルファイルへデータセットする
oApp.Sheets("日計表").Select
Set objSheet = objBook.Sheets(1)
シート「日計表」を選択する。

oApp.Cells.Clear
シートの中身をクリアする。

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strTbl As String

Dim cnq As New ADODB.Connection
Dim rsq As New ADODB.Recordset
Dim comq As New ADODB.Command

Set cnq = CurrentProject.Connection
comq.ActiveConnection = cnq
comq.CommandText = "Q_日計"
Set rsq = comq.Execute

Q_日計クエリにアクセスする。

最終レコードまで繰り返す。
Do Until rsq.EOF

oApp.Range("A" & Format(i)).Value = rsq!業者名1
oApp.Range("B" & Format(i)).Value = rsq!発注材料名1
oApp.Range("C" & Format(i)).Value = rsq!単位1
oApp.Range("D" & Format(i)).Value = rsq!単価1

レコードの値をセルに入力する。

Loop

Set comq = Nothing
rsq.Close: Set rsq = Nothing
cnq.Close: Set cnq = Nothing

クエリへの接続を終了する。

Set xlRange = Nothing
oApp.Workbooks(1).Close SaveChanges:=True
エクセルを保存する。

oApp.Quit
Set oApp = Nothing

エクセルオブジェクトを終了、開放する。




アクセスを動画で楽に覚える方法はこちら>>






アクセスを動画で楽に覚える方法>>

 アクセス入門
・アクセスの構成
・アクセスのツールにプログラムを埋め込む
  
・アクセスのツールの基本操作
 ・アクセスでサブフォームの新規作成  
・アクセスでボタンとコンボボックスの新規作成  
・アクセスツールボックスでラベルとテキストボックス
  
・アクセスデザインビューとフォームビュー

・アクセスvba・条件分岐と繰り返し
  
・アクセスvba変数の種類
  
・アクセスフォーム・レポートの新規作成
  
・アクセス削除クエリの新規作成
・アクセスリレーションシップの新規作成  
・アクセスクエリの新規作成
  
・アクセステーブルでフィールドと・主キーの修正
  
・アクセステーブル作成

・アクセスの使い方
VBA
・アクセスVBAでパスワード画面
・VBAで時間操作(DateDiff関数,DatePart)

・VBAで時間操作(DateAdd関数,DateValue,TimeValue)
・VBAでエクセルの表をソート(Sortメソッド)
・VBAで時間操作(Time関数,・Hour,Minute,Second,Format)
・VBAで日付操作(Date関数,Year,Month,Day,
・Weekdayname,Format)

・VBAでエラー処理(On Error GoTo)
・VBAでコピー操作(copyメソッド)
・VBAで文字列操作(String関数,InStrRev)
・VBAで文字列操作(Len関数,Mid,Left,Right)
・VBAで文字列操作(UCase関数,LCase,StrConv)
・VBAで文字列操作(LTrim関数,RTrim,Trim,Replace)
・VBAで文字列操作(InStr関数)
・VBAで文字列操作(StrComp関数)
・VBAでFind メソッドを使って検索する方法
・VBA のcellsでエクセルのセルの位置を数字で指定する
・VBAでエクセルのsheetsの操作
・VBAで配列を扱う
・VBAでfileを操作する
・VBA、ADOとSQLでテーブルのデータを削除する
・VBA、ADOでAccessテーブルのレコードにアクセスする
・VBAでエクセルの書式を設定する

・VBAでテーブルやクエリのレコードをエクセルに入力
・VBAでエクセルのワークシートを追加
・アクセスVBAでインポートとエクスポート
データベース・SQL
・Update SETステートメントのSQL
・DELETE ステートメントのSQL
・INNER JOIN 内部結合のSQL
・LEFT JOIN 左外部結合のSQL
・RIGHT JOIN 右外部結合のSQL
・INSERT INTO ステートメントSQL
・SELECT DISTINCTで重複を削除SQL
・SELECTステートメントSQL
・SQLをDAOで使う
Copyright (C) 2011 All Rights Reserved.