チーム メンバーの日々の行動を監視するために使用できるマスター ファイルを作成する必要があります。これを行うには、マスター ファイルで多数の関数を使用して、countif
未countifs
解決の項目やその他のものを計算します。関数によって使用されるデータは、同じワークブック内の他のタブから取得され、それらのデータは多数の異なる Excel ファイルから取得されます。(以下を参照)
私の問題は次のとおりです。マスター ファイルの Country# タブのセルにあるデータは、チームのメンバーがソース ファイル内の関連セルを変更しても継続的に更新されません。リボン (データ/接続/リンクの編集/値の更新) からマスター内のセルを手動で更新するには、マスター ドキュメントを閉じて再度開くか、ソース ブックをバックグラウンドで開きますが、目標は介入なしで一日中最新の状態にすることです。
ソース ファイル内の未入力のセルは、ソース ファイルでさらに変更を確認できるように、マスター ファイルにすでにリンクされていることに注意してください。(例: Country3.xlsm では、B5:B7 に 3 つの項目のみが見つかります。B8、B9 などは、マスター ファイル内の対応するセルにすでにリンクされているため、4 番目の項目が挿入されると、マスター ファイルに表示されます。)
私は Excel 2007 を使用しており、設定は次のとおりです。
- Excel オプション/数式/ワークブックの計算: 自動
- Excel オプション/詳細設定/このブックを計算するとき: 他のドキュメントへのリンクを更新する
- Excel オプション/詳細設定/このブックを計算するとき: 外部リンクの値を保存する
- Excel オプション/セキュリティ センター/セキュリティ センターの設定/外部コンテンツ/データ接続のセキュリティ設定: すべてのデータ接続を有効にする (推奨されません)
- Excel オプション/セキュリティ センター/セキュリティ センターの設定/外部コンテンツ/ブック リンクのセキュリティ設定: すべてのブック リンクの自動更新を有効にする (推奨されません)
- Excel オプション/セキュリティ センター/セキュリティ センターの設定/メッセージ バー/メッセージ バーの表示: コンテンツがブロックされているときにすべてのアプリケーションでメッセージ バーを表示する
この問題の解決を手伝ってください!
答え1
質問のフォーマットがいいですね!
これをオンにする方法はありませんが、自動的にオンにする方法はあります。まだ有効にしていない場合は開発者リボンを有効にし(完全な Excel をお持ちの場合)、そのリボンで [Visual Basic] をクリックします。
どこかに固執したいActiveWorkbook.RefreshAll
。おそらく、「ThisWorkbook」を編集して次のコードを追加することで解決できるでしょう。
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
ActiveWorkbook.RefreshAll
End Sub
タブを切り替えるたびに発生するようにするには?
または、マスター シートの VBA コードを編集して、ActiveWorkbook.RefreshAll
ワークシートの Worksheet_Activate イベントや Worksheet_SelectionChange イベントなどのどこかに追加することではどうでしょうか?
それがうまく機能するようになったら、https://stackoverflow.com/questions/211715/how-to-make-a-macro-which-executes-periodically-in-excel代わりに n 秒ごとに定期的に更新するようにします。