Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1672 / 2272 ツリー ←次へ | 前へ→

【5871】エクセルへの自動出力 aki 05/8/17(水) 13:37 質問[未読]
【5874】Re:エクセルへの自動出力 クロ 05/8/17(水) 14:45 回答[未読]
【5880】Re:エクセルへの自動出力 aki 05/8/17(水) 16:24 質問[未読]
【5881】Re:エクセルへの自動出力 クロ 05/8/17(水) 16:47 回答[未読]
【5883】Re:エクセルへの自動出力 aki 05/8/17(水) 16:57 発言[未読]
【5884】Re:エクセルへの自動出力 クロ 05/8/17(水) 17:12 回答[未読]
【5887】Re:エクセルへの自動出力 aki 05/8/17(水) 17:30 質問[未読]
【5888】Re:エクセルへの自動出力 クロ 05/8/17(水) 17:41 回答[未読]
【5889】Re:エクセルへの自動出力 aki 05/8/17(水) 17:58 質問[未読]
【5890】Re:エクセルへの自動出力 aki 05/8/17(水) 18:04 お礼[未読]

【5871】エクセルへの自動出力
質問  aki  - 05/8/17(水) 13:37 -

引用なし
パスワード
   テーブル"テストテーブル"  フィールド"ID"
フォームAにあるテキストボックス"テスト"をコマンドボタン"実行"をクリッ
クすることにより、テーブル"テスト"の"ID"に自動入力(追加)され、かつ、
エクセル"テスト.xls"に自動に出力されるようにするにはVBAをどのように入
力すればいいのでしょうか?
テーブルに出力までできています。しかし、エクセルに自動出力がされません
。なにか悪い点があったら教えて下さい。

Private Sub 実行_Click()
Dim SQLCODE As String
Dim XName As String
  
  XName = "C:\テスト.xls"

  SQLCODE = "INSERT INTO テストテーブル(ID)VALUES('" & Me.テスト.val
ue & "')"

  DoCmd.RunSQL SQLCODE

  DoCmd.RunSQL SQLCODE
  DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9,"テス
トテーブル",XName

End Sub

【5874】Re:エクセルへの自動出力
回答  クロ  - 05/8/17(水) 14:45 -

引用なし
パスワード
   <省略>
>
>  DoCmd.RunSQL SQLCODE
 ↑は余計です。↓ここに書いてあるので
>  DoCmd.RunSQL SQLCODE
>  DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9,"テス
>トテーブル",XName
テスト.xls内に「テストテーブル」という名前のsheetに書かれていませんか?

【5880】Re:エクセルへの自動出力
質問  aki  - 05/8/17(水) 16:24 -

引用なし
パスワード
   テスト.xls内に「テストテーブル」という名前のsheetに書かれていませんか?

テストテーブルという名前のシートはありましたが、中身が出力されていません。なにがどうなったのでしょうか?

【5881】Re:エクセルへの自動出力
回答  クロ  - 05/8/17(水) 16:47 -

引用なし
パスワード
   ▼aki さん:
>テストテーブルという名前のシートはありましたが、中身が出力されていません。
>なにがどうなったのでしょうか?

う〜ん。私はakiさんの隣いるわけではないので…
テストテーブルにはフォームで入力したIDが書き込まれていますか?

【5883】Re:エクセルへの自動出力
発言  aki  - 05/8/17(水) 16:57 -

引用なし
パスワード
   ▼クロ さん:
>テストテーブルにはフォームで入力したIDが書き込まれていますか?

はい、それはきちんと書き込まれています。

【5884】Re:エクセルへの自動出力
回答  クロ  - 05/8/17(水) 17:12 -

引用なし
パスワード
   適当なコマンドボタンにでも
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "テストテーブル", "C:\テスト.xls"
と書いても「テスト.xls」の「テストテーブル」シートに書き出されませんか?

それと何かエラーは出るのでしょうか?
また、「テスト.xls」の「テストテーブル」シートには何も書かれていない状態ですか?

ちなみにCドライブ直下にある「テスト.xls」を開いて確認しているんですよね?

【5887】Re:エクセルへの自動出力
質問  aki  - 05/8/17(水) 17:30 -

引用なし
パスワード
   ▼クロ さん:
>適当なコマンドボタンにでも
>DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "テストテーブル", "C:\テスト.xls"
>と書いても「テスト.xls」の「テストテーブル」シートに書き出されませんか?

はい、駄目でした。

>
>それと何かエラーは出るのでしょうか?

エラーはなにもでません。
>また、「テスト.xls」の「テストテーブル」シートには何も書かれていない状態ですか?
>
今シートを新規で作り(同じ名前で)直しました。
そしたら、「テスト.xls」の「テストテーブル」シート名もなんにも出力されなくなってしまいました。

>ちなみにCドライブ直下にある「テスト.xls」を開いて確認しているんですよね?
はい、直下です。今はマイドキュメントの下に「テスト.xls」を作っています。

【5888】Re:エクセルへの自動出力
回答  クロ  - 05/8/17(水) 17:41 -

引用なし
パスワード
   >はい、直下です。今はマイドキュメントの下に「テスト.xls」を作っています。
マイドキの直下はクセがありますよ。パスにスペースがあるから…
スタートメニューの「ファイル名を指定して実行」にマイドキュメントの下の「テスト.xls」ドラッグアンドドロップしてパスを確認してください。
※コピペしても可

【5889】Re:エクセルへの自動出力
質問  aki  - 05/8/17(水) 17:58 -

引用なし
パスワード
   そうなんですか。
そのパスを
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "テストテーブル", "C:\テスト.xls"

"C:\テスト.xls"の中に修正して加えればよいということですか?

【5890】Re:エクセルへの自動出力
お礼  aki  - 05/8/17(水) 18:04 -

引用なし
パスワード
   コピペしたらできました!
ありがとうございました!!

1672 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078255
(SS)C-BOARD v3.8 is Free