現在VBAを勉強中の者です。分からない事がありましたので助言お願い致します。
複数のBOOKから集計を1枚のシートで行おうと思っています。
提出者(可変)名.XLS の中の月度シート(1~12)の指定セル(Z1)の
数値を回収したいと思い、回収シートを作りました。
1 2 3 4 5
提出者A
提出者B
提出者C
のようなイメージです。
提出者のシートは毎月の月度で1枚ずつシートが増えてゆきます。
1月分を更新するマクロを作り、ボタンを押せば回収シート1月度分のA・B・Cが更新されるというの目指しています。
表の各セルに「リンク貼り付け」を行い数値を回収するイメージなのですが、BOOKを開いた時の「リンク更新の問い合わせ」は
Private Sub Workbook_Open()
ActiveWorkbook.UpdateLinks = xlUpdateLinksNever
で止めました。しかし問題があり、
・提出月以降の月はシートが作られていない
・提出者の誰かが更新していない場合、リンクを探しに行くときにエラーになる
と双方とも「どのファイル開きますか?」と聞かれます。
リンク先が無い場合に無視する記述などあるのでしょうか?
また、こういう複数ファイルからの集計をVBA上で行う時に
参考になるマクロや解説ページなどがありましたら
合わせて教えて頂きたいです。
No.3ベストアンサー
- 回答日時:
書き方が逆ではないでしょうか。
DoEvents
Application.SendKeys "{ESC}"
Range("A1").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISERROR('\\リンク先\[担当者A.xls]1月'!R1C20),"""",'\\リンク先\[担当者A.xls]1月'!R1C20)"
お返事が遅れまして申し訳ありません。
イメージしていた通りに動きました!
これでなんとか作成出来そうです。
リンク貼り付けで行うのは色々と無理があると
勉強にもなりました。VBAも少しずつ勉強し、
年内にはVBAで処理できるようにシートを作り直そうと思います。
本当にありがとうございました。
No.4
- 回答日時:
数式では無理があるのでは・・・
マクロで集計した方がいいと思いますが、如何でしょうか。
以下に似たような質問があったので、参考になるかも知れません。
http://okwave.jp/qa211677.html
http://dell-support.okwave.jp/qa2987583.html
お返事ありがとうございます。
上のお礼に書いたとおりVBAで年内くらいに
シートを作り変えれるように勉強したいと思います。
色々と助言ありがとうございました。
No.2
- 回答日時:
それでは、以下を試してみてください。
DoEvents
Application.SendKeys "{ESC}"
この回答への補足
以下の式を試してみましたがダメでした。
マクロの記録で作成しております。
Range("A1").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISERROR('\\リンク先\[担当者A.xls]1月'!R1C20),"""",'\\リンク先\[担当者A.xls]1月'!R1C20)"
DoEvents
Application.SendKeys "{ESC}"
該当シートが無い場合「値の更新」と出ます。
集計のやり方自体をリンク貼り付けでは無く
VBAでがんばった方がよいのでしょうか?
No.1
- 回答日時:
以下を試してみましたか?
Application.DisplayAlerts = False
この回答への補足
お返事ありがとうございます。
上記を試してみましたが無理でした。
私の書き方がまずかったと思うのですが、リンクの更新の際に
リンク先が無ければ「値の更新」ダイヤログが出て、ファイルの選択(参照)するように言われます。
この作業を自動でキャンセルするような物を作りたいと思い、お知恵を借りたい次第です。
現状まだ5月ですので殆どがリンク切れの状態となっており、
見た目にエラーが出まくりだったのですが、そこはISERRORで
対応しました。 他になにか良い方法があればご教授下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Excel(エクセル) ワードのマクロについて教えてください。 1 2023/03/11 13:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/08 09:08
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/12 10:10
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/26 13:19
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/13 08:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/06/01 14:45
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/06/02 08:44
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで同じシートのコピーを一...
-
エクセルの複数シートの保護を...
-
エクセルVBAでパスの¥マークに...
-
EXCEL:同じセルへどんどん足し...
-
別シート参照のセルをシート毎...
-
エクセルで前のシートを連続参...
-
VBAでシートコピー後、シート名...
-
シートの保護のあとセルの列、...
-
エクセルで前シートを参照して...
-
EXCELで1ヶ月分の連続した日付...
-
前の(左隣の)シートを連続参...
-
Accessのスプレッドシートエク...
-
エクセルでファイルを開いたと...
-
エクセルでシート名を自動入力...
-
Excel、同じフォルダ内のExcel...
-
【Excel関数】値が合致するセル...
-
EXCELで同一フォーマットのシー...
-
至急お願いします。エクセルシ...
-
Excelの複数ファイルの複数行を...
-
複数シートの固定のセルの値を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで同じシートのコピーを一...
-
エクセルの複数シートの保護を...
-
エクセルVBAでパスの¥マークに...
-
前の(左隣の)シートを連続参...
-
Excelで金銭出納帳。繰越残高を...
-
EXCEL:同じセルへどんどん足し...
-
EXCELで1ヶ月分の連続した日付...
-
シートの保護のあとセルの列、...
-
別シート参照のセルをシート毎...
-
エクセルでファイルを開いたと...
-
EXCELで同一フォーマットのシー...
-
エクセルで前のシートを連続参...
-
エクセルで前シートを参照して...
-
VBAでシートコピー後、シート名...
-
Accessのスプレッドシートエク...
-
エクセルのシート名をリスト化...
-
複数シートの特定の位置に連番...
-
Excelのシートを、まとめて表示...
-
エクセル 計算式も入っていない...
-
スプレッドシートの関数VLOOKUP...
おすすめ情報