-
【Excel VBA】指定したセル範囲を画面いっぱいに拡大・縮小表示する方法
広大なワークシート上にある特定の表やグラフエリアだけを、ユーザーに注目して見せたい場合があります。手動でズームスライダーを調整するのは手間ですが、VBAを使えば、指定したセル範囲がウィンドウにぴったり収まるように、ズーム率を瞬時に自動調整す... -
【Excel VBA】Excelウィンドウの位置を自由に変更(移動)する方法
VBAマクロの実行中に、他のアプリケーションと画面を並べて表示させたい場合や、ユーザーに特定の情報を見やすい位置に提示したい場合など、Excelのウィンドウそのものの表示位置を動かしたいことがあります。 VBAを使えば、ウィンドウの画面上の座標(.Le... -
【Excel VBA】Excelウィンドウのサイズを自由に変更し、元に戻す方法
VBAマクロを実行する際に、特定のウィンドウサイズで見せたい、または複数のアプリケーションを画面に並べるためにExcelウィンドウの大きさを調整したい、といったニーズがあります。 VBAを使えば、Excelのウィンドウサイズをプログラムで正確にコントロー... -
【Excel VBA】ウィンドウ枠が固定されている位置(基準セル)を取得する方法
マクロを様々なExcelファイルで実行する際、そのファイルがどのように「ウィンドウ枠の固定」を設定しているかを知りたい場合があります。例えば、「ウィンドウ枠の固定を一旦解除し、処理後に元に戻す」といった丁寧なマクロを作成するには、元の固定位置... -
【Excel VBA】ウィンドウ枠を固定して、常に見出しを表示する方法 (FreezePanes)
データが縦横に長い大きな表をExcelで扱っていると、下にスクロールした時に見出し行が見えなくなったり、右にスクロールした時に項目列が見えなくなったりして、どのデータが何を示しているのか分かりにくくなることがあります。 Excelの「ウィンドウ枠の... -
【Excel VBA】「新しいウィンドウ」で開いた複製ウィンドウをすべて一括で閉じる方法
Excelの「新しいウィンドウを開く」機能は、複数のシートを同時に見比べる際に非常に便利ですが、作業が終わった後に Book1:1, Book1:2, Book2:1, Book2:2 ... のようにウィンドウが散らかってしまい、一つずつ閉じるのが面倒になることがあります。 VBAを... -
【Excel VBA】同じブックの2つのシートを左右に並べて同時表示する方法
入力用のシートと集計結果のシート、データシートとグラフシートなど、1つのExcelブック内で複数のシートを頻繁に行き来しながら作業することはよくあります。 Excelの「新しいウィンドウを開く」機能と「整列」機能を使えば、2つのシートを左右に並べて同... -
【Excel VBA】ウィンドウが分割されているか、またそのペイン数を確認する方法
Excelの「分割」機能を使うと、一つのワークシートを2つまたは4つの領域(ペイン)に分けて、それぞれを独立してスクロールできます。広大なシートの異なる箇所を同時に見比べたい場合に非常に便利な機能です。 VBAマクロで画面操作を自動化する際、ユーザ... -
【Excel VBA】同じブックの新しいウィンドウを作成して操作する方法 (NewWindow)
一枚のシートにデータを入力し、別のシートでその集計結果をリアルタイムで見たい、といった場合に、Excelの「新しいウィンドウを開く」機能は非常に便利です。これにより、同じブックを2つのウィンドウで同時に表示し、それぞれで異なるシートやセル範囲... -
【Excel VBA】手動計算モードでも保存直前に必ず再計算を実行させる方法
数式が大量に含まれる重いExcelファイルでは、動作を軽快にするために計算方法を「手動」に設定することがよくあります。しかし、この設定には「再計算(F9キー)を忘れて、古いデータのまま上書き保存してしまう」という大きなリスクが伴います。 VBAを使... -
【Excel VBA】開いているすべてのExcelブックを一括で上書き保存する方法
複数のExcelファイルを開いて同時に作業していると、最後に一つずつ保存を確認するのが面倒に感じることがあります。特に、新規作成しただけの未保存のブック("Book1"など)が混じっていると、それぞれに保存場所を指定する必要があり、手間がかかります... -
【Excel VBA】ブックに2種類のパスワードを設定して保存する方法
機密情報や重要なデータを含むExcelファイルを保護するために、パスワードを設定するのは一般的なセキュリティ対策です。VBAを使えば、このパスワード設定もSaveAsメソッドの一部として自動化できます。 Excelには、目的の異なる2種類のパスワード、「読み... -
【Excel VBA】「変更を保存しますか?」の確認メッセージなしでブックを閉じる方法
VBAでブックを閉じる(.Close)際に、もしそのブックに未保存の変更があると、Excelは「変更を保存しますか?」という確認メッセージを表示します。これによりマクロの実行が一時停止し、ユーザーの応答を待つ状態になってしまいます。これでは完全な自動... -
【Excel VBA】すべてのブックの変更を保存せずにExcelを終了する方法
複数のブックを開いて作業するマクロの最後に、Excelアプリケーションそのものを終了させたい場合があります。しかし、編集された未保存のブックが一つでもあると、Excelはブックごとに「変更を保存しますか?」という確認メッセージを表示し、マクロがそ... -
【Excel VBA】特定の条件でブックを閉じられないようにする方法 (BeforeCloseイベント)
入力フォームや申請書としてExcelファイルを使っている際、「ユーザーが特定のセルへの入力を忘れたまま、ファイルを閉じてしまう」のを防ぎたい、という場面があります。 VBAの**Workbook_BeforeCloseイベントを利用すれば、ブックが閉じられる直前に最終... -
【Excel VBA】別のブックのVBAマクロを実行する方法 (Application.Run)
VBAで開発を進めると、複数のファイルで同じような処理を使いたい場面が出てきます。そのたびにコードをコピー&ペーストするのは非効率ですし、修正があった場合にすべてのファイルを更新しなければならず、メンテナンス性が悪化します。 このような課題... -
【Excel VBA】ブックのプロパティ(作成者・作成日など)を読み書きする方法
Excelファイルの「プロパティ」には、作成者、タイトル、件名、作成日時といった、ファイルに関する付帯情報(メタデータ)が保存されています。これらの情報は、ファイル > 情報 の画面で確認できますが、VBAを使えばプログラムで自動的に読み取ったり... -
【Excel VBA】旧共有ブックを編集中のユーザー一覧を取得する方法
Excelの古いバージョンの「共有ブック」機能を使っている際に、「今、自分以外に誰がこのファイルを開いているんだろう?」と確認したくなることがあります。VBAを使えば、現在その共有ブックを編集しているユーザーの名前とログイン時刻の一覧を取得する... -
【Excel VBA】ブックの保護状態(シート構成・ウィンドウ)を確認する方法
マクロで新しいシートを追加しようとしたり、ウィンドウサイズを変更しようとしたりした際に、「ブックが保護されているため、操作を実行できません」というエラーに遭遇することがあります。 このようなエラーを未然に防ぐためには、処理の実行前にブック... -
【Excel VBA】ブックを保存する3つの方法(Save/SaveAs/SaveCopyAs)の違いと使い分け
VBAでブックへの処理が完了したら、最後は必ず「保存」の操作が必要になります。しかし、VBAには.Save、.SaveAs、.SaveCopyAsという3つの似たような保存メソッドがあり、これらの違いを正確に理解しないと、意図せず重要なファイルを上書きしてしまうなど... -
【Excel VBA】拡張子を除いたファイル名のみを取得する2つの方法 (Split / InStrRev)
VBAでファイル名を扱う際、「Report.xlsx」というフルネームから拡張子.xlsxを取り除き、「Report」というベース名だけを取得したい、という場面は頻繁に発生します。例えば、同じ名前で新しいフォルダを作成したり、テキストファイルを出力したりする場合... -
【Excel VBA】ブックのフルパス(保存場所とファイル名)を取得する3つのプロパティ
VBAマクロで、処理中のブックと同じフォルダに新しいファイルを出力したり、開いているファイルの場所をログに記録したりする際には、そのブックの「フルパス」(ファイルの場所と名前を合わせた完全なパス)を取得する必要があります。 VBAには、このパス... -
【Excel VBA】Workbook_Openなどの自動実行マクロを無効にしてブックを開く方法
VBAで他のブックを開く際、そのブックにWorkbook_Openイベントが設定されていると、ファイルを開いた瞬間に意図せずそのマクロが実行されてしまいます。データを読み書きしたいだけなのに、メッセージボックスが表示されたり、想定外の処理が始まったりし... -
【Excel VBA】マクロで開いたブックを「最近使ったアイテム」の履歴に追加する方法
VBAマクロで特定のファイルを開く処理を自動化した場合、通常そのファイルはExcelの「最近使ったアイテム」の一覧には追加されません。しかし、マクロで使ったファイルを後で手動で開きたい時に、履歴に残っていると非常に便利です。 この記事では、Workbo... -
【Excel VBA】「リンクの更新」メッセージを表示させずにブックを開く方法
他のExcelファイルへの参照リンクが含まれているブックをVBAで開こうとすると、「このブックには、他のデータソースへのリンクが含まれています。」というメッセージが表示され、マクロが一時停止してしまうことがあります。これでは、完全な自動化は実現... -
【Excel VBA】ブックの自動保存をVBAでオン/オフする方法 (.AutoSaveOn)
Microsoft 365のExcelでは、OneDriveやSharePointに保存されたファイルに対して「自動保存」が標準でオンになっています。これは共同編集や不意のシャットダウンに非常に便利な機能ですが、VBAマクロで大量のデータを処理する際には、一つ一つの変更が即座... -
【Excel VBA】ブックの状態を確認する方法(読み取り専用・互換モード)
VBAマクロを実行する際、対象となるExcelブックがどのような状態で開かれているかによって、処理を分岐させたり、エラーを未然に防いだりする必要が出てくることがあります。 特に重要なのが、「このブックは編集可能なのか?」や「古いファイル形式ではな... -
【Excel VBA】パスワードで保護されたExcelブックを開く方法
VBAで他のブックを操作する際、対象のブックが「読み取りパスワード」で保護されているケースがあります。このようなブックも、VBAを使えばパスワードを自動で入力して開くことが可能です。 この記事では、Workbooks.OpenメソッドのPassword引数を使った基... -
【Excel VBA】ファイルパスを指定して既存のブックを開き、操作する方法
VBAでマクロを組む上で、「別のExcelファイルを開いて、そこからデータを読み取りたい」または「処理結果を別のファイルに書き込みたい」といったブックをまたいだ操作は頻繁に発生します。 この記事では、VBAで指定したパスにある既存のExcelブックを開き... -
【Excel VBA】ThisWorkbookとActiveWorkbookの決定的な違いと正しい使い分け
Excel VBAでコードを書き始めると、多くの人がThisWorkbookとActiveWorkbookという2つのキーワードに遭遇します。これらはどちらもブックを指しているように見えますが、その意味は全く異なり、この違いを理解していないと、意図しないブックを操作してし...