itLinkedInB!HatenaLINELINE豆父ちゃん同じような編集を複数のエクセルファイルに行っていて、効率がすごい悪い。複数のエクセルファイルを同時で処理する方法はないの?こんな疑問を抱えながら作業をしている方のために、複数のエクセルファイルを操作するVBAを紹介します。私が仕事で導入しているのは、別々のエクセルファイルで管理しているスケジュール表をいっぺんに操作する!というもの。どのような処理が可能なのかは下記の記事で詳しく紹介しています。シフト表などを効率よく管理する方法はないの?こんな悩みを解決します。VBAを使えば複数のデータを一括管理することができます!勤続10年のサラリーマンが考案したスケジュール表一括管理システムを紹介します。スケジュール一括管理システムに使われている複数のエクセルファイルを操作するVBAについて下記の記事で詳しく紹介しています。エクセル業務の効率をアップさせたいと考えている方は是非チェックしてみてください。スケジュール一括管理システムとはスケジュー...実際の仕事で使われているVBAを一つ一つ詳しく紹介していきます。内容を一致させる!というサンプルを使って紹介しています。別のエクセルファイルを開く元となるエクセルファイルと開いたエクセルファイルでやりたい処理を行う(コピペなど)処理が終わったエクセルファイルを上書き保存エクセルファイルを閉じる次に別のエクセルファイルを開く2~5を繰り返す上記の流れで複数のエクセルファイルを操作するVBAを作っていきます。勤務表のエクセルファイルにVBAを記載し、超過勤務整理簿のエクセルファイルを操作する!というサンプルになります。勤務表の変更内容を超過勤務整理簿に反映させるというものです。3人分の超過勤務整理簿を操作しています。“ファイルはすでに開かれています。Sub上記は勤務表エクセルファイルで使われている別のエクセルファイルを操作するVBAです。このVBAを参考にしながら説明していきます。上記で紹介しているVBAの6行目から12行目と29行目で別のエクセルファイルの場所を取得しています。k8行目と9行目は勤務表の設定Sheetの4列目のセルが空欄のときプログラムを終了させる!というもの。操作したいエクセルの登録は7行目から19行目まで可能で、登録してあるエクセルがなくなった時点でプログラムを終了させている。11行目で変数Poに操作したいエクセルの場所を格納。6行目と29行目のFor~Nextで繰り返し処理を行い、複数のエクセルファイルの操作を可能にしている。上記で紹介しているVBAの13行目から17行目で別のエクセルファイルを開く、25行目から28行目で保存、閉じるの処理をしています。“ファイルはすでに開かれています。True13行目は操作したいエクセルファイルの場所を格納したPoを開く!というもの。14行目から17行目は操作したいエクセルファイルが既に開かれていて、「読み取り専用」になったときプログラムを終了させる!というもの。「読み取り専用」になった場合、変更した内容を上書き保存することができないのでプログラムを終了させています。25行目はアラートを非表示にする!というもの。「閉じますか?」などのメッセージの表示を防ぐためです。26行目と27行目は操作が終わったエクセルの保存を行い、閉じる!というもの。Bbookになっているのか疑問に思うかもしれませんが、Bbookについては次のBookとSheetの設定方法で説明しています。28行目は先ほど非表示にしたアラートを表示させる!というもの。上記で紹介しているVBAの2行目から5行目と18行目から19行目でBookとSheetの設定を行っています。j)2行目から5行目で勤務表のエクセルファイルのBookとSheetの設定を行っている。Ash18行目から19行目で開いたエクセルファイル(超過勤務整理簿)のBookの設定を行っている。BbookBookとSheetの設定をしっかり行えば、複数のエクセルファイルを同時に操作することが可能になります。他のエクセルファイルを操作する基本的なやり方を下記の記事で詳しく紹介しています。】https://mamemametochan.com/excel-13﻿豆父ちゃん複数のエクセルファイルを同時に扱う業務の効率をもっと上げたい。開く・操作する・閉じる処理を行うVBAです。デスクワークでは、複数のエクセルファイルを同時に扱う業務がいっぱいですよね。上記で紹介しているVBAの20行目から24行目で複数のえエクセルファイルの操作を行っています。iFor~Nextの繰り返し処理を使ってBbookにAbookの情報を反映させています。反映したいセルの場所の繰り返し反映させるセルの場所を操作することで様々な情報を複数のエクセルファイルの反映させることができます。For~Nextの基本的な使い方を下記の記事で詳しく紹介しています。PocketsVBAでForと関数Ifを組み合わせて使用する方法【繰り返し処理で作業効率アップ】https://mamemametochan.com/excel-5疑問がある人VBAで繰り返し処理(For~Next)と関数IFを組み合わせて使用したい。やって使えばいいの?こんな疑問にお答えします。この記事では、繰り返し処理(For~Next)と関数IFを組み合わせる書き方をサンプル事例を使って詳しくご紹介します。繰り返し処理(For~Next)と関数IFを組み合わせて使えるようになれば、以下のような処理を自動化することができます。条件によってセルの塗り潰しをする大量のデータをエクセルを使って分析、編集しているろいう方におすす...複数のエクセルファイルを操作するVBAは作業効率を格段にアップしてくれるデスクワークでよく発生する問題が、サーバー内で同じようなエクセルファイルの種類がどんどん増えてしまう!と言うことです。転勤などの理由で担当者が変わりサーバー内のデータの使い方が変わってしまうのは仕方のないことですが、いろんなエクセルファイルを操作するということは作業効率低下に繋がります。それを防いでくれるのが、複数のエクセルファイルを同時に操作するVBA!です。エクセルの保存場所、ファイル名、シートの設定をしっかり行えば簡単にリンクを作ることができます。いろんなエクセルファイルを開いたり閉じたりして作業の効率が悪い!と感じている方におすすめのVBAです。便利な並び替えという処理をVBAで自動化したい。コメントをキャンセルメールアドレスが公開されることはありません。*ウェブサイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。自己紹介マメな性格で2児の子を持つアラサー父ちゃん。働き方について日々研究中。このブログでは、VBAを使ったエクセル作業の効率をアップさせる方法を中心に記事を掲載しています。会社員のときに経験した「こんな機能がほしい」、「こんなことできたら便利だなぁ」という悩みをVBAで解決します。エクセル記事の他にも、「電気の仕事」についての情報を紹介しています。個人事業主が事業を営んでいく上で有益な情報や電気の仕事に関する情報などを私の経験からご紹介しています。「失敗」という貴重な経験を有益な情報に変換してみなさんにお届けします。