advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 27291 for マクロ (0.014 sec.)
[[20160622134546]]
#score: 2168
@digest: 907f611fd5b08ec9b972a5aaf26c56b4
@id: 71010
@mdate: 2016-06-22T10:54:31Z
@size: 7261
@type: text/plain
#keywords: ロ. (27249), 大元 (10461), book1 (7353), book3 (6868), ロブ (6452), 理" (5448), 名= (4880), activewindow (3589), 、bo (3505), 導宜 (3185), ィレ (2984), マク (2868), シジ (2801), クポ (2766), ロ名 (2735), クロ (2635), book2 (2490), ブレ (2425), activate (2368), ブッ (2181), 実績 (2098), トデ (2040), windows (2012), 太様 (1956), 記述 (1757), close (1731), ロシ (1709), xls (1536), レク (1514), トリ (1446), 明確 (1425), カレ (1354)
『複数のマクロを実行したい。』(KUN)
教えてください。 マクロのEXCELファイルが複数あり、 Book名=BOOK1 マクロ名=処理 Book名=BOOK2 マクロ名=処理 Book名=BOOK3 マクロ名=処理 のEXCEがあり、 毎朝1回(AUTO_OPEN)で実行しようとしているのですが、 Sub AUTO_OPEN() Workbooks.Open Filename:="BOOK1.xls" Application.Run "BOOK1.xls!処理" Windows("BOOK1.xls").Activate ActiveWindow.Close Workbooks.Open Filename:="BOOK2.xls" Application.Run "BOOK2.xls!処理" Windows("BOOK2.xls").Activate ActiveWindow.Close Workbooks.Open Filename:="BOOK3.xls" Application.Run "BOOK3.xls!処理" Windows("BOOK3.xls").Activate ActiveWindow.Close End Sub 結果、BOOK1のマクロ(一番最初の記述したマクロ)しか 実行できません。 各々のマクロは正常に機能しています。 一連で実行しようとどうしてもうまくいきません。 解決方法を教えてください。 < 使用 Excel:Excel2003、使用 OS:unknown > ---- > 結果、BOOK1のマクロ(一番最初の記述したマクロ)しか実行できません。 BOOK1が実行されるなら、残りも実行されていいはずですね。 ステップ実行(F8キーを押す)で1行ずつ動作確認しながら進めてみて、 Book1が終わった後、どんな展開になっているか確認してみてください。 (半平太) 2016/06/22(水) 15:35 ---- 半平太様 マクロの動きを確認してみました。 BOOK1のマクロ(処理)は、 別のBOOKをOPENして、集計をし、CLOSE する・・・というものなのですが、 別のBOOKをクローズして、マクロの実行マーク(黄色しるし)も消えています。 お手上げ状態です。 どうか、宜しくお願い致します。 (KUN) 2016/06/22(水) 16:02 ---- BOOK1が、また別のブックを開いて、閉じてですかぁー なんか、こう云うコードって危なそうな気がするんですけど、 ↓ >Windows("BOOK1.xls").Activate >ActiveWindow.Close 多分、全部そう言う書き方になっているんですよね? その2行をこう言う書き方の1行に変更できないですか? ↓ Workbooks("BOOK1.xls").Close とりあえずテスト的に、 Book1のマクロに書かれているハズの「別ブックを閉じるための2行」にだけ変更を加えてみてください。 それでBOOK2の処理まで進む様なら、それが原因と言うことになります。 (半平太) 2016/06/22(水) 17:14 ---- 一部、半平太さんのコメントと重複しますが。 その Book1.xls の 処理 というプロシジャを、そのままコピペでアップしてみてください。 それと、テーマとは異なりますが、カレントディレクトリーにあるブックという指定は、なんだか心配ですね。 ブックフルパスを指定して開いてはいかがですか。 (β) 2016/06/22(水) 17:17 ---- 半平太様、β様 宜しくお願い致します。 Sub 処理() Sheets(Array("1", "2", "3", "4", "5", "6", "7")).Select Sheets("1").Activate Cells.Select Selection.ClearContents Sheets("操作").Select Range("B2").Select Application.ScreenUpdating = False 実績 Windows("マクロ.xls").Activate 式 ActiveWorkbook.Save ActiveWindow.Close End Sub 半平太様のおしゃるとおり、 まさにそのとおりの記述をしています。 ご指導宜しくお願い致します。 β様 ご指導宜しくお願い致します。 追伸、 マクロ初心者です。カレントディレクトリー??です お手数をお掛けいたしますが宜しくお願い致します。 (KUN) 2016/06/22(水) 17:39 ---- この中の 実績 および 式 というプロシジャのコードがみえないのですが、マクロ.xls って、また別のマクロブックですか? それとも、Book1.xls を呼び出した、最初にアップされたマクロブックですか? (β) 2016/06/22(水) 17:47 ---- β様 実績 と 式 はBOOK1の中に記述しているマクロです。 説明が不十分で申し訳ございません。 宜しくお願い致します。 半平太様 BOOK1マクロの最後の行の記述を変えてみたのですが、 うまくいきませんでした。 BOOK1で終了してしまいました。 (KUN) 2016/06/22(水) 18:05 ---- >>実績 と 式 はBOOK1の中に記述しているマクロです。 それは見たらわかります。で、そのコードがどうなっているか見えませんけど とコメントしました。 質問しているのは、 マクロ.xls というブックが何なのかということです。 Book1 で新たに呼び出した別のブックなのか、それとも、Book1.xlsを呼び出した大元のマクロブックなのか。 で、マクロ.xls が、大元のマクロブックで Windows("マクロ.xls").Activate の後、 式 プロシジャを抜けた段階でも それが アクティブなら ActiveWorkbook.Save ActiveWindow.Close ここで、大元のマクロブック自体が閉じられるわけで、その瞬間に、大元のマクロブックのマクロも消え、 処理が、そこで終わってしまいます。 いずれにしても、ブックをActive(コードでは WindowをActiveにしていますが)してシートをSelectして アクティブシートを前提にしたコード記述になっているようですが、こういったコードは【状況依存】コードと呼び どのブックのどのシートを相手にしているのか、どのブックを閉じているのか、そういったあたりが見えにくく 保守フェーズの追加改定作業如何によっては、とんでもない不具合が発生するおそれがあります。 そういうことがなかったとしても、コード自体の可読性が悪くなります。 カレントディレクトリーを前提のブックオープン(これは 【PCの環境依存】コード)ともども コード記述については、正しい記述方法を、早く身につけられるべきです。 ともあれ、マクロ.xls の正体を教えてください。 (β) 2016/06/22(水) 18:45 ---- β様 お手数をお掛け致して申し訳ございません。 マクロ.xls・・・は、key SQLでテータを抽出しているコードがexcelマクロに記述されています。 このコードが大きくてココに記載できないのです。 (関係するかわからないのですが)sub 入庫() ・・・ end sub sub 出庫() ・・・ end sub で書かれています。 マクロの形態は、 1、book1の処理マクロで、KEY SQL から対象の入庫データを抽出します。 2、book2の処理マクロで、KEY SQL から対象の出庫データを抽出します。 3、book1のデータをbook3に貼付ける。book2のデータをbook3に貼付ける。 book3で、照合を行い実績資料を作成する。 こんな流れなんですが、 毎回、1〜3のマクロを手で実行しているので、 今回新たにBOOK4で1〜3を順番に実行するマクロを作成したかったのですが・・・ どうにもうまくいきませんでした。 この説明で、ご指導頂くコトは無理でしょうか? なんとかうまくいくコトはできないのでしょうか? 宜しくお願い致します。 (KUN) 2016/06/22(水) 19:34 ---- いやぁ・・・ まず、マクロ.xls とは、どのブックのことですかという質問に明確に答えてほしいんです。 大元マクロブック や Book1.xls とは別のブックなのか 大元マクロブックのことなのか。 それを明確にしてくださいと何度もお願いしています。 その先、もしかしたら、関連プロシジャのコードアップをお願いするかもしれませんが、まずは、ここを明確にしてください。 それと、【ブレークポイント】はご存じですか? マクロの必要なところにセットしておくと、実行がそこに行ったときに止まります。 で、継続指示でまた動きだして、次のブレークポイントでとまります。 これを続けていけば、どのブレークポイントを最後に、、マクロが消滅(?)してしまったかがわかります。 とりあえずは 処理 プロシジャの Sheets(Array("1", "2", "3", "4", "5", "6", "7")).Select Windows("マクロ.xls").Activate ActiveWindow.Close と、本体マクロブックの Windows("BOOK1.xls").Activate これらに設定した上で、最初から実行してみてください。 ブレークポイントの設定がわからなければ、たとえば http://www.239-programing.com/excel-vba/basic/basic022.html を参考にしてください。 (β) 2016/06/22(水) 19:53 ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/201606/20160622134546.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97012 documents and 608132 words.

訪問者:カウンタValid HTML 4.01 Transitional