おはようございます。
ご教授頂きたく、書き込み致しました。宜しくお願
い致します。
フォームにて抽出条件を指定後、クエリーを実行させ、EXCELに出力させる処理を、VBにて行っています。
連続操作(出力したEXCELは閉じて、ACCESSは開いた
ままで、抽出条件を変えて再度実行させる)を行う
と「オブジェクト変数またはWithブロック変数が設
定されていません」とエラーメッセージが出てしま
います(この時、EXCELにデータだけは出力されてい
ます)
ACCESS及び出力されたEXCELを、一旦閉じて、再度ACCESSを起動し、条件指定後、抽出を行うと、エラ
ーも出力されず、問題なく処理が始まります。
VB上では下記の様に記述はしています。
Exit_コマンド2_Click:
Exit Sub
objexcel.ActiveWorkbook.Close True
objexcel.Quit
Set objexcel = Nothing
Err_コマンド2_Click:
MsgBox Err.Description
Resume Exit_コマンド2_Click
End Sub
どうしても分からないので、書き込みさせて頂きました。連続操作をしてもエラーが出ないようにするには、どのようにすれば宜しいでしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
やりたいことはこんな感じでしょうか?
1.フォームに条件を入力
2.コマンド1をクリックで入力された条件からデータを抽出しaaaaテーブルを作成。ここからexcelへエクスポート。
3.コマンド2をクリックでExcelを終了。
これだけならExcelを開くところは以下の部分だけでよく、objexcelなどを使用する必要はありません。
DoCmd.OutputTo acOutputTable, "aaaaa",acFormatXLS, "\aaaaa.XLS",True
ただしこのやりかただと、コマンド2クリックではExcelは終了しないのでExcel側で終了させる必要があります。
No.1
- 回答日時:
Excelを開くところのソースに問題がありそうです。
その部分を載せてもらわないとなんともいえません。またobjexcel変数のスコープは?
この回答への補足
早速のご連絡、有難うございますm(__)m
>Excelを開くところのソースに問題がありそうです。
EXCELは下記の様にセットしています。
Set objexcel = CreateObject("Excel.Application")
objexcel.Visible = True
DoCmd.OutputTo acOutputTable, "aaaaa",acFormatXLS, "\aaaaa.XLS",True
>objexcel変数のスコープは?
ごめんなさい、自分VB始めたばかりで、ここの意味がよく分かっていません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ttlで戻り値を取得する方法
-
コマンドプロンプトが実行中か...
-
バッチファイルでキー操作を行う。
-
RTX1100の削除コマンド
-
Tera Term Proに関する質問です。
-
コマンドプロンプトで表示が多...
-
別のユーザーフォームのコマン...
-
CreateProcessでの実行ファイル...
-
PIONEERのMSXに搭載されているP...
-
アンドロイドでも、robocopyは...
-
access 2003 コマンドボタンの...
-
書籍「プログラミングのための...
-
JP1起動バッチについて
-
EEPROMのデータの初期化について
-
【Teratermマクロ】文字列の一...
-
jupyter notebookが開けません!
-
tcl/tkで標準出力に出される値...
-
コマンドキーがないんですけど...
-
TEXの表の位置が・・・
-
windowsでバイナリエディタ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトが実行中か...
-
コマンドプロンプトで表示が多...
-
バッチファイルでキー操作を行う。
-
ttlで戻り値を取得する方法
-
別のユーザーフォームのコマン...
-
VBユーザーフォームで時間入力
-
Tera Term Proに関する質問です。
-
RTX1100の削除コマンド
-
コマンドプロンプトですべてのU...
-
コンボボックス(最終行取得)
-
EEPROMのデータの初期化について
-
文字の点滅はどうやるのですか?
-
excel-vbaで作成したマクロを別...
-
コマンドキーがないんですけど...
-
ルーターにつながっている全て...
-
VBA
-
dosバッチ起動後、画面を閉じな...
-
[WSH|JS|VB] telnetコマンドの...
-
【Teratermマクロ】文字列の一...
-
makeコマンドのエラー
おすすめ情報