シートを同期(リンク)できるようにしよう【Excel VBA】

エクセルのファイルを同期するイメージ画像 Excel

同じ内容を色んなExcelに書くのはもう嫌!

お仕事をしていると同じ内容を複数のExcelに記載せざるを得ない事ってよくありますよね

コピペも面倒だし、微妙にフォーマットが違ったりするので面倒……

何より片方は更新したのに、もう片方の更新を忘れて「話が違うんだけど?」って怒られる・・・・・・

もう1枚に纏めてもう片方は外部参照しろよ!! と常々思うんですが、

内容を入マスターデータは見辛いよ。いつものフォーマットに数値を手入力したいな

という敵の攻撃お客様の要望により出来ないケースは多々あります。

 

Excelに相互リンクとか同期機能があればいいんですけどね……

 

どこを探しても無い!!!

だから、つくってみました

これがVBAで作ったExcel同期機能だ!

 

 

*ちなみに出ている氏名データはダミーデータ(ランダム生成データ)なので安心して下さいね?

30秒ほどなので、まずは動画をご覧ください。

何回も別のブックに切り替えていますが(左下のタブの動きを見るとわかりやすい。動画下側のタイムバーは非表示にしてください)、ブックを切り替える度に、瞬時にもう片方のブックとデータの同期がされているのがわかると思います

現時点では完全同期しか作っていませんが、ブック毎にフォーマットを変える等も可能です

問題点も多々ありますが、処理時間も意外と許容範囲内に収まったので

応用して実務に使える可能性がありますね・・・・・・!?

VBAのExcel同期の問題点

同期という課題を無理矢理突破したので、割と問題点は山積みです

・両方のブック(シート)にVBAを記載している

→マクロ有のファイルを拒否される客先(基本よほど仲良しの客先以外には送付しないほうが無難)にはそのまま送付できない

→VBAが苦手な人は導入が難しい

・シートの記載量が増えるとそれだけ同期時間が延びる

・2つのブックの同時使用時の対応をまだ考えてない

・フィルターをかけるとデータが消える

・クリップボードの中身が消える

→他シートを経由することで保持する機構は作ったが、全保持されるかは不明

・ふとした拍子にデータ吹っ飛ぶ可能性大

→かなり色々やってるので他のマクロとの噛み合わせ次第では面倒なことに・・・

 

ある程度洗練されてきたらソースコードの公開もしたいですね

今日の所はこの辺で。

 

 

コメント

タイトルとURLをコピーしました