
まず現在の状況を説明します。
PCのOS:Windows 7
あるシステムからサーバーにCSVデータを飛ばしています。
そのデータに反応してExcelのマクロが自動起動するようなプログラムをPC上で組んであります。
マクロの内容は、データを読んでプリンターから印刷する というものです。
ここで問題になるのが、データが飛んでくると自動でマクロを起動するので
マクロが動いている間は他の操作ができなくなってしまうという点です。(数分程度)
Excelを非表示にはしているのですが、裏で動いているので他の操作がフリーズしてしまいます。
マクロ自体は裏で動いているが、それが他の操作に影響しない という方法はありますでしょうか?
何卒宜しくお願い致します。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
こんばんは。
>マクロ自体は裏で動いているが、それが他の操作に影響しない という方法はありますでしょうか?
オートメーション・オブジェクトにすればいいのでは?
この用語で、ググってみてください。
例:
http://home.att.ne.jp/zeta/gen/excel/c04p44.htm
私は、タイマーを使って、為替レートの自動読み込みを、Excelをメインで使っている最中に、自動的に起動して、自動的に終了するというコードを使っていました。気をつける点は、ひとつだけ、必ず、オブジェクトを残さないことです。異常終了なんてなると、見えないオブジェクトがのこっているので、手動で、オブジェクトを削除しなければなりません。最初は、タスクマネージャーで確認しながら使ってください。
なお、COMでExcelを使うと、終了方法がややこしくなりますから、辞めたほうがよいです。
No.2
- 回答日時:
「今使ってるエクセルが」動かなくなるご相談と思いました。
どこが(何が)問題なのか絞り込まれていないので,あてずっぽで思いつきを並べるしかありませんね。
>プリンタがネックかも
「印字する」の部分を全てコメントアウトして実行してみて,問題が解消されるようなら確かにそうかもしれません。
ほかにも例えば,「CSVを読み込む」で止まってるのかもしれません。印刷用に何か作成している作業が問題なのかもしれません。
具体的にどんなマクロを動かしている(細かくどんな処理を積み上げている)のかを一つずつ潰して,実際にどの部分で「動かなくなる」のか解明してから,改めて対応策をご相談投稿なさってみてください。
No.1
- 回答日時:
>そのデータに反応してExcelのマクロが自動起動するようなプログラムをPC上で組んであります。
これをどのように実現しているのかはご質問の範疇じゃありませんが,この部分を細工して「マクロを含んだブックを開いてマクロを動かす」んじゃなく,「エクセルを起動して所定のマクロを実行する」ように仕込みます。
例:
excel.exeのショートカットを用意,所定のブックを同時に開かせるようにして,当該ブックにWorkbook_Openマクロを付けておく
http://office.microsoft.com/ja-jp/excel-help/HA0 …
既存の(今使ってる最中の)エクセルとは別のエクセルが起動するので,作業中のエクセルは影響を受けません。必要に応じて/eオプションを併用するなど。また自動起動マクロには,最後にはapplcationをquitするように仕込んでおきます
この回答への補足
説明が足りずに申し訳ありません。
すでにそのようになっており、新規でExcelが開きます。
ここで言う他の操作というのは、例えばブラウザ操作であったり、他のアプリの操作まで固まってしまうのです。
恐らく連続でいくつもの印刷処理をするので、プリンタードライバーとのやりとりがネックになっているのかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ExcelのVBマクロを、バックグラウンドで動かしたいのです。
Visual Basic(VBA)
-
EXCELをバックグラウンドで実行するには
Excel(エクセル)
-
VBA バックグラウンドで別ブックを開いてデータ転記
Excel(エクセル)
-
-
4
エクセルで別ブックをバックグラウンドでオープンする方法
Excel(エクセル)
-
5
画面ロック中にプログラム実行できないでしょうか
Windows Vista・XP
-
6
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
Excelでマクロ実行中に画面を固定する方法
Visual Basic(VBA)
-
9
Excelのプロセスが消えません
Excel(エクセル)
-
10
Excel VBAを後ろで動かす方法
Visual Basic(VBA)
-
11
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
12
エクセルマクロをバックグラウンドで実行しているように見せたい
その他(プログラミング・Web制作)
-
13
エクセルである行以下全部を削除する方法
Excel(エクセル)
-
14
エクセルで、指定の値よりも大きい数字を最初に越えたときの列番号を返すには?
Excel(エクセル)
-
15
エクセルで、抽出したデータだけを別ファイルにしたい
Excel(エクセル)
-
16
セルの文字列後ろのスペース削除
Excel(エクセル)
-
17
エクセルVBAが途中で止まります
Visual Basic(VBA)
-
18
UWSC 非アクティブウィンドウへのキー入力
その他(ソフトウェア)
-
19
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
20
【VBA】ワークブックを開く時にエラーが出る場合と出ない場合の違いは?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WPSOffice_マクロの有効化について
-
エクセル ボタンに設定したマク...
-
Excelのマクロでボタンを押すと...
-
Excel マクロの編集がグレーに...
-
エクセルでマクロ(Excel 4.0)...
-
複数のマクロボタンをまとめて...
-
エクセルで、「いいね」のよう...
-
エクセル マクロ名にブック名...
-
エクセルの、記録を終了したマ...
-
エクセルマクロで、別のブック...
-
(Excel VBA)シートコピー時マ...
-
Excelのマクロ名の並び順の法則...
-
Excelマクロをバックグラウンド...
-
エクセルの表を複数枚印刷した...
-
Excelマクロで、稼働中のマクロ...
-
LDPlayerのマクロの編集方法を...
-
【マクロ】マクロボタンをクリ...
-
ExcelVBAでShowDatasFormがエラ...
-
コピーしたデータを2行ずつに貼...
-
マクロの保存先を変更するには
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WPSOffice_マクロの有効化について
-
Excel マクロの編集がグレーに...
-
複数のマクロボタンをまとめて...
-
エクセル ボタンに設定したマク...
-
Excelのマクロでボタンを押すと...
-
エクセルで、「いいね」のよう...
-
エクセル マクロ名にブック名...
-
エクセルでマクロ(Excel 4.0)...
-
エクセルの、記録を終了したマ...
-
LDPlayerのマクロの編集方法を...
-
(Excel VBA)シートコピー時マ...
-
Excelマクロで、稼働中のマクロ...
-
エクセルの表を複数枚印刷した...
-
エクセルで明日の日付を表示す...
-
Excelのマクロ名の並び順の法則...
-
別シートのマクロボタンをマク...
-
Excelマクロをバックグラウンド...
-
エクセルマクロで、別のブック...
-
他のBOOKにマクロを反映させな...
-
EXCELのマクロが他のパソコンで...
おすすめ情報