|
▼桜 さん:
こんにちは。
テーブル「T_金額」
SEQ : オートナンバー型
金額: 通貨型
フォーム(適当な名前で…)
テキストボックス: txt金額
コマンドボタン : 実行
を用意してください。
Private Sub 実行_Click()
'要参照設定 Microsoft DAO x.x Object Library
Dim SQLCode As String
Dim XName As String
Dim QD As DAO.QueryDef
XName = "C:\Test1.xls" 'Excel のフルパスを入れる
SQLCode = "INSERT INTO T_履歴(金額) VALUES (" & Me.txt金額 & ")"
DoCmd.RunSQL SQLCode
SQLCode = "SELECT T_履歴.SEQ, T_履歴.金額, " _
& "CCur([金額]*0.05) AS 消費税 FROM T_履歴;"
Set QD = CurrentDb.CreateQueryDef("Q_金額", SQLCode)
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Q_金額", XName
If MsgBox("クエリを削除しますか?", vbYesNo) = vbYes Then
DoCmd.DeleteObject acQuery, "Q_金額"
End If
End Sub
このままのコードですと、例えば
・「txt金額」に値が入っていない
・既にクエリ「Q_金額」が存在している
等の場合エラーになりますので、
それぞれにエラーが出ない様な処理を付け加えなければいけません。
|
|