No.4ベストアンサー
- 回答日時:
>sFileName = oWH.specialfolders("DeskTop") '此処でデスクトップのPathを得ています。
>sFileName = sFileName & "\" & "1234.xlsx"
ここでファイル名を、★ → 1234 に↑代えてますから
★は見つからない・・・ということでは?
ついでに
~前略~
Set oSH = Nothing
Set oBK = Nothing
Set oXL = Nothing
createObject("Shell.Application").shellExecute sFileName
End Sub
と一行加えてください。
保存されたエクセルファイルが開かれます。
この回答への補足
おはようございます。おかしいですね、ご呈示のコード一行追加とファイル名を、★に変更し実行しましたがEXCEL自体起動しようとしません、申し訳ありません
Private Sub コマンド40_Click()
'Microsoft Office 14.0 Access Database Engine Object Library
' または Microsoft DAO 3.6 Object Library どちらか。
'と Microsoft Excel 14.0 Object Library
'VBEの画面で ツール(T) → 参照設定 から選んでチェックが入ってなかったら入れる
Dim rsFrom As DAO.Recordset
Dim oXL As Excel.Application
Dim oBK As Excel.Workbook
Dim oSH As Excel.Worksheet
Dim oWH As Object
Dim sFileName As String
Set rsFrom = CurrentDb.OpenRecordset("集金明細", dbOpenSnapshot) 'クエリ名は出力したいのに適宜変更
Set oXL = New Excel.Application
Set oBK = oXL.Workbooks.Add
Set oSH = oBK.Worksheets(1)
Set oWH = CreateObject("Wscript.Shell")
sFileName = oWH.specialfolders("DeskTop") '此処でデスクトップのPathを得ています。
sFileName = sFileName & "\" & "★.xlsx"
oSH.Range("A4").CopyFromRecordset rsFrom
oBK.SaveAs FileName:=sFileName
oBK.Close SaveChanges:=False
oXL.Quit
Set oWH = Nothing
rsFrom.Close: Set rsFrom = Nothing
Set oSH = Nothing
Set oBK = Nothing
Set oXL = Nothing
createObject("Shell.Application").shellExecute sFileName
End Sub
No.5
- 回答日時:
ん~~~~~
Windows を再起動する。
件のアクセスファイルを開く。(他のアプリケーションは開かない)
Alt + F11 を押してVBEの画面にし、コンパイルを行う。
(VBEのメニューから、デバッグ→○△のコンパイル)
VBEは閉じて、念のためにリボンのデータベースツール→最適化 を行う。
フォームのコマンドボタンを押してみる。
これでもExcelが立ち上がらない・エラーも出ないのなら
Set rsFrom = CurrentDb.OpenRecordset("集金明細", dbOpenSnapshot) 'クエリ名は出力したいのに適宜変更
クエリ名("集金明細")を指定していますが、
ここを適当なテーブル名にする。集金明細 → 適当なテーブル名
また、
上の行の前に
msgbox "ここは" & screen.activecontrol.name
と1行追加。
コマンドボタンを押してみる。
「ここは・・・」が出るか。
(・・・の部分がコマンドボタン名(コマンド40 になっているか確認)
エクセルが立ち上がるか。
(下?のタスクバーも見てください)
でどうでしょ?
上記の変更二か所(テーブル名・1行追加)を行って
コマンドボタンを押して、「ここは・・・」が出る。
・・・はコマンド40 になっている。
にも関わらず
エクセルが立ち上がらない、タスクバーにも現れないのなら
私は降参です。
No.3
- 回答日時:
不思議ですね。
それでは、あなたのコマンドボタンクリック時イベントの
コードを載せてみてください。
Private Sub コマンドなんとか名_Click()
から
End Sub
まで全部です。
この回答への補足
お手数おかけします。
Private Sub コマンド40_Click()
'Microsoft Office 14.0 Access Database Engine Object Library
' または Microsoft DAO 3.6 Object Library どちらか。
'と Microsoft Excel 14.0 Object Library
'VBEの画面で ツール(T) → 参照設定 から選んでチェックが入ってなかったら入れる
Dim rsFrom As DAO.Recordset
Dim oXL As Excel.Application
Dim oBK As Excel.Workbook
Dim oSH As Excel.Worksheet
Dim oWH As Object
Dim sFileName As String
Set rsFrom = CurrentDb.OpenRecordset("集金明細", dbOpenSnapshot) 'クエリ名は出力したいのに適宜変更
Set oXL = New Excel.Application
Set oBK = oXL.Workbooks.Add
Set oSH = oBK.Worksheets(1)
Set oWH = CreateObject("Wscript.Shell")
sFileName = oWH.specialfolders("DeskTop") '此処でデスクトップのPathを得ています。
sFileName = sFileName & "\" & "1234.xlsx"
oSH.Range("A4").CopyFromRecordset rsFrom
oBK.SaveAs FileName:=sFileName
oBK.Close SaveChanges:=False
oXL.Quit
Set oWH = Nothing
rsFrom.Close: Set rsFrom = Nothing
Set oSH = Nothing
Set oBK = Nothing
Set oXL = Nothing
End Sub
No.2
- 回答日時:
>うまく動作しないようです
何を
どうして
どのような結果
になったのかの説明が無いと
当方では対処のしようもありません。
回答者の目に浮かぶように詳しく行った事と状況を説明してください。
こちらでは投稿する前にも検証済みです。
この回答への補足
大変お手数お掛けします、フォームデザインビューにて作成したコマンドボタンを右クリックしイベントビルドからコードビルダーを選択し教えて頂いたコードを貼り付けました、エラーメッセージは何も出ませんが、エクセルファイルが出来ません。
当初ご指摘のMicrosoft DAO 3.6 Object Library どちらか。
'と Microsoft Excel 14.0 Object Library
にもチェックを入れましたがDISK TOP上に"★.xlsx"
ファイルが出来ません、当方不手際がありましたらお許し下さい。
No.1
- 回答日時:
コマンドボタンクリック時のコードに下記内容を入れてください。
デスクトップに、★.xlsx が出来ます。
分かりやすくするためにくどい書き方かも。中のコメントにも注目。
余計に分かりにくかったらご容赦。
※メモ型のフィールドが含まれている場合は255文字以内で切り捨てられます。
'要 参照設定
'Microsoft Office 14.0 Access Database Engine Object Library
' または Microsoft DAO 3.6 Object Library どちらか。
'と Microsoft Excel 14.0 Object Library
'VBEの画面で ツール(T) → 参照設定 から選んでチェックが入ってなかったら入れる
Dim rsFrom As DAO.Recordset
Dim oXL As Excel.Application
Dim oBK As Excel.Workbook
Dim oSH As Excel.Worksheet
Dim oWH As Object
Dim sFileName As String
Set rsFrom = CurrentDb.OpenRecordset("社員", dbOpenSnapshot) 'クエリ名は出力したいのに適宜変更
Set oXL = New Excel.Application
Set oBK = oXL.Workbooks.Add
Set oSH = oBK.Worksheets(1)
Set oWH = CreateObject("Wscript.Shell")
sFileName = oWH.specialfolders("DeskTop") '此処でデスクトップのPathを得ています。
sFileName = sFileName & "\" & "★.xlsx"
oSH.Range("A4").CopyFromRecordset rsFrom
oBK.SaveAs fileName:=sFileName
oBK.Close SaveChanges:=False
oXL.Quit
Set oWH = Nothing
rsFrom.Close: Set rsFrom = Nothing
Set oSH = Nothing
Set oBK = Nothing
Set oXL = Nothing
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) accessデータを指定したExcel、そして指定したセルへエクスポートするaccess VBAコー 2 2023/05/17 17:02
- Access(アクセス) Accessのスプレッドシートエクスポートで、シートが追加されてしまう 2 2022/07/16 21:45
- Excel(エクセル) [クイックアクセスツールバー]の設定ファイルの格納場所について、 5 2023/04/21 14:43
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- その他(パソコン・スマホ・電化製品) EXCELのSUMPRODUCT関数について 2 2022/09/21 17:30
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Access(アクセス) accessでexcelを読み込む時のデータ型 1 2022/03/28 19:45
- Outlook(アウトルック) 【 Windows 10 】アドレス帳に正しくインポートを完了させたい。 3 2023/04/23 13:41
- Access(アクセス) Accessにインポートした複数のテーブルを表示させる方法が分かりません。 1 2023/01/30 20:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
OSQLの起動について
-
CSVファイルをBULK INSERTでSQL...
-
Windows版 pg_dumpの結果をログ...
-
oracle spool SJIS → UTF-8
-
Query OK, 0 rows affected
-
tar.gzファイルのリストアについて
-
shellからpostgresqlへの変数の...
-
ACCESS VBA;コマンドボックス...
-
Excelのデータをインポートする...
-
psql でのエラー出力について
-
SQL: insert/importコマンドの違い
-
date型に空白を入れるとエラー...
-
DBのテーブルの使用量
-
ディスク上のサイズの乖離が大...
-
createdbでいきなりつまづいて...
-
ヤフーショッピングでPayPay支...
-
PostgreSQLからSQLServerへの移行
-
エクセルVBAでcommit,rollback
-
PostgreSQLについて教えてくだ...
-
リコーimagioneo630 エラーs...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
oracle spool SJIS → UTF-8
-
Windows版 pg_dumpの結果をログ...
-
tar.gzファイルのリストアについて
-
CSVファイルをBULK INSERTでSQL...
-
ACCESS VBA;コマンドボックス...
-
shellからpostgresqlへの変数の...
-
ファイルに記述されている複数...
-
psql でのエラー出力について
-
Oracle / UNIX ファイルコマン...
-
Query OK, 0 rows affected
-
SQL: insert/importコマンドの違い
-
OSQLの起動について
-
teraterm上でsqlplusにログイン...
-
SQL+Plusの訂正
-
コマンドと関数の違い
-
date型に空白を入れるとエラー...
-
アクセスのフォームで10件づつ...
-
DBのテーブルの使用量
-
VB上でのSQLローダ利用
-
SQLサーバのジョブにてVisualBa...
おすすめ情報