2026/04/17
【ExcelVBA】書類に名前を差し込んで100人分のPDFを一括出力

【ExcelVBA】書類に名前を差し込んで100人分のPDFを一括出力

以下のフォーマットの氏名の部分(○○ ○○)に、隣の「名簿」シートの100人分の氏名を1つずつ入力してPDFファイルで出力する必要があるとします。

この作業を1件ずつ行うのは、かなり大変です。

ということで今回は、100人分のPDFファイルを自動で出力する仕組みの実現方法について解説していきます。

※こちらで作成したファイルは、記事の最後にて配布しています。


1. 開発準備

以下の2つのシートを元に作成していきます。

こちらでは、「名簿」シートの各行の氏名を1つずつ、「修了証」シートの「○○ ○○」が入力されたセルに入力して、PDFファイルで保存する流れを自動化します。
出力されるPDFファイルの名前は、「(対象氏名).pdf」とします。

まず初めに、[開発]タブを選択し、[マクロ]を選択します。

表示された以下の画面に開発する機能の名前を入力し、[作成]を選択します。
こちらでは、「一括PDF出力」と入力しています。

次に表示される以下の画面の「Sub 一括PDF出力」から「End Sub」の間にコードを記述します。
「Option Explicit」は、VBEの設定次第では表示されません。「Option Explicit」についての解説はこちらでは省略します。


2. コードの記述

以下のコードを記述します。

Sub 一括PDF出力()

    Dim ws1 As Worksheet
    Dim ws2 As Worksheet
    Set ws1 = Worksheets("修了証")
    Set ws2 = Worksheets("名簿")
    
    Dim i As Long, sPath As String
    For i = 3 To 102
        sPath = "A:\出力\" & ws2.Cells(i, "B").Value & ".pdf"
        ws1.Range("C3").Value = _
            ws2.Cells(i, "B").Value
        ws1.ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=sPath
    Next i

End Sub

では、コードについて解説していきます。

    Dim ws1 As Worksheet
    Dim ws2 As Worksheet
    Set ws1 = Worksheets("修了証")
    Set ws2 = Worksheets("名簿")

「ws1」という変数に「修了証」シートの情報、「ws2」という変数に「名簿」シートの情報を割り当てています。

    Dim i As Long, sPath As String
    For i = 3 To 102
        '省略
    Next i

「名簿」シートの3行目から102行目の氏名に対し、1つずつPDFファイルを出力する処理を行っています。

        sPath = "A:\出力\" & ws2.Cells(i, "B").Value & ".pdf"

各行の氏名に対し、「sPath」という変数に、保存先の情報とPDFファイルの名前を指定しています。
こちらでは、Aドライブの中の出力フォルダのパスに、「名簿」シートの該当行のB列の氏名を加え、最後に「.pdf」と拡張子を加えています。

保存先を変更する場合は、ここのパスを変更します。

        ws1.Range("C3").Value = _
            ws2.Cells(i, "B").Value
        ws1.ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=sPath

「修了証」シートのセルC3(セルが結合されている場合は左上のセル)に、「名簿」シートの該当行の氏名を入力しています。

そして、「修了証」シートの印刷範囲をPDFファイルで出力しています。

PDFファイルの出力ではなく印刷したい場合は、以下のように指定します。

ws1.PrintOut

3. 完成

左上のリストから「一括PDF出力」を選択し、実行ボタンを押すことで、100人分のPDFファイルが出力されます。

▼サンプルファイル▼

2026/04/14
【Excel】タスク管理表で瞬時に絞り込み

【Excel】タスク管理表で瞬時に絞り込み

以下のように、ボタンを押すだけで瞬時に絞り込みできる仕組みの作り方について紹介していきます。

今回は、以下の表から作っていきます。


1. テーブル化

以下のようなボタンを作成するには、元の表をテーブルに変換する必要があります。

まずは、元の表の中にカーソルを移動させ、[挿入]タブから[テーブル]を選択します。

[テーブルの作成]という設定画面に表示されるデータ範囲が、元の表の見出しを含む範囲全体であることを確認します。
もし異なっている場合は、直接修正します。

範囲の確認ができたら、[先頭行をテーブルの見出しとして使用する]にチェックした状態で確定します。

これだけで、元の表をテーブルに変換できます。

テーブル内にカーソルを移動すると、[テーブルデザイン]タブが表示されます。
このタブから、デザインやテーブル名などを変更することができます。
以下では、テーブル名を「タスク管理表」にしています。

テーブルについては、以下で詳しく解説しています。
>テーブルの活用方法


2. スライサーの設定

次は、以下のようなボタンを作成します。

このボタンは「スライサー」と呼ばれ、テーブルの機能に備わっています。

まずは、対象のテーブル内にカーソルを移動させ、[テーブルデザイン]タブから[スライサーの挿入]を選択します。

そうすると、以下のようにテーブルに存在する見出しの一覧が表示されます。
この一覧から、絞り込みしたい項目にチェックし、確定します。

こちらでは、「進捗」のみにチェックしていますが、複数の項目をチェックすることもできます。

確定すると、以下のようにボタン(スライサー)が挿入されます。

後は、好みの位置に移動して、表示方法を少し修正するだけです。
こちらでは、1行目に行を挿入し、スライサーを移動しています。

このままだと、1つのボタンしか表示されないので、列方向に表示する件数を増やします。
スライサー(ボタン以外)を選択すると、[スライサー]タブが表示されます。
そのタブから、ボタンを表示する列数を変更することができます。
こちらでは、列数を「3」にしています。

これでボタン(スライサー)の完成です。


3. 完成

表示したい項目のボタンを押すだけで、以下のように、瞬時に絞り込みされます。

絞り込みを解除するには、左上の「×」のアイコンをクリックします。

表の下の方に移動したときにも、先頭行のボタンと見出しを常に表示したい場合は、表示したい行の下の行全体(3行目)を選択して、[表示]タブから[ウィンドウ枠の固定]の[ウィンドウ枠の固定]を選択します。

以上の手順で、先頭の2行が常に表示されるようになります。

2026/04/10
【ExcelVBA】複数の書類テンプレートを一元管理

【ExcelVBA】複数の書類テンプレートを一元管理

こちらでは、複数の書類テンプレートを1つのファイルで管理し、かつ上書き保存させずに、指定した書類テンプレートで簡単に新規作成することができる仕組みを作っていきます。

具体的には、以下のように各シートの書類テンプレートの上に、「このテンプレートを使用する」というボタンを配置し、そのボタンを押すことで、そのシートのみが新規ブックにコピーされるという仕組みを実現します。

新規ブックにコピーされるので、誤って上書き保存する心配がありません。

※こちらで作成したファイルは、記事の最後にて配布しています。


1. 開発準備

こちらでは、以下のファイルを元に実現していきます。

こちらのファイルは、複数の書類テンプレートをシートごとで管理したものです。
必要に応じて、シートを追加していただいても問題ございません。

今回は、上記のファイルを活用して、「選択しているシートのみを新規ブックにコピーする」という機能を実装していきます。
ファイルの用意ができたら、[開発]タブから[マクロ]を選択し、表示された設定画面に「開発する機能の名前」を入力して[作成]を選択します。
こちらでは、「CopyTemplateSheet」と入力しています。

次に表示される以下の画面の「Sub ○○」から「End Sub」の間にコードを記述します。
「Option Explicit」は、VBEの設定次第では表示されません。「Option Explicit」についての解説はこちらでは省略します。


2. コードの記述

以下のコードを記述します。

Sub CopyTemplateSheet()

    ActiveSheet.Copy
    
    Dim ws As Worksheet
    Set ws = ActiveSheet
    
    Dim i As Long
    For i = ws.Shapes.Count To 1 Step -1
        If ws.Shapes(i).Type = msoFormControl Then
            If ws.Shapes(i).FormControlType = xlButtonControl Then
                ws.Shapes(i).Delete
            End If
        End If
    Next i
    
End Sub

では、コードについて解説していきます。

    ActiveSheet.Copy
    
    Dim ws As Worksheet
    Set ws = ActiveSheet

選択中のシートを新規ブックにコピーし、そのコピーしたシートの情報を「ws」という変数に割り当てています。

    Dim i As Long
    For i = ws.Shapes.Count To 1 Step -1
        If ws.Shapes(i).Type = msoFormControl Then
            If ws.Shapes(i).FormControlType = xlButtonControl Then
                ws.Shapes(i).Delete
            End If
        End If
    Next i

コピーされたシート上の「図形の末尾の通し番号」から順番に繰り返し、指定した番号の図形がフォームコントロール(msoFormControl)であり、さらにボタン(xlButtonControl)の場合に、その図形を削除しています。

この処理は、最終的に用意する「このテンプレートを使用する」というボタンを、コピーされたシートから削除するためのものです。

末尾の通し番号から順番に繰り返している理由は、図形を削除したときに番号がずれてしまわないようにするためです。


3. ボタンの作成

コードが完成したら、実行用のボタンを用意します。

ボタンは、[開発]タブの中の[挿入]から作成することができます。
ボタンには開発した機能「CopyTemplateSheet」を割り当てます。

ボタンを1つ作成したら、そのボタンをコピーし、他のシートにも貼り付けます。

ご自身で書類テンプレートのシートを追加された際は、同様に同じボタンを貼り付けます。


4. 完成

以上の手順で完成です。
使用したい書類テンプレートのシートを選択して、そのシート上の「このテンプレ-トを使用する」のボタンをクリックするだけで、そのシートが新規ブックにコピーされます。
また、そのコピーされたシートからは「このテンプレートを使用する」のボタンのみが削除されます。

他にもボタン以外の図形が含まれる場合でも、ボタン以外の図形は削除されません。

▼サンプルファイル▼

2026/04/07
【Excel】「空白セル」を「0」ではなく「空白」として抽出

【Excel】「空白セル」を「0」ではなく「空白」として抽出

Excelでは、VLOOKUP関数などで空白セルの値を抽出すると、空白ではなく「0」として抽出されてしまいます。

こちらでは、空白セルの値を「0」ではなく空白として抽出する方法について解説していきます。


原因と対策

空白セルの値が空白ではなく「0」として抽出されてしまう原因は、Excelが空白セルを数値の「0」として扱ってしまう仕様のためです。
そのため、「0」ではなく空白のまま抽出するには、「数値」ではなく「文字列」として認識させる必要があります。

空白セルを「数値」ではなく「文字列」として認識させるために最も有効な方法は、「空の文字を加える」という方法です。

例えば、以下の数式で考えてみます。

=VLOOKUP(B18,B3:C15,2,FALSE)

この数式の結果を文字列にするためには、以下のように「空の文字」を直接加えます。

=VLOOKUP(B18,B3:C15,2,FALSE)&""

たったこれだけで、空白セルの場合は「空白」のまま抽出することができます。


注意点と対策

「空の文字を加える」という方法は単純ですが、注意点があります。
それは、数値を抽出する際に「文字列に変換されてしまう」という点です。

そのため、もし数値を抽出する可能性のある数式の場合は、「空の文字を加える」という方法は使えません。
そのような場合は「IF関数」を活用して、以下のように分岐させると良いです。

=IF(VLOOKUP(B18,B3:C15,2,FALSE)="","",VLOOKUP(B18,B3:C15,2,FALSE))

こちらの数式では、VLOOKUP関数の結果が「空白」の場合に「空の文字」を意図的に抽出しています。

ただ、VLOOKUP関数の同じ数式が2つ存在しているため、処理に無駄があります。
もし「LET関数」に対応している環境の場合は、以下のように「LET関数」を活用するとよいです。

=LET(x,VLOOKUP(B18,B3:C15,2,FALSE),IF(x="","",x))

LET関数については、以下で詳しく解説しています。
>LET関数の使い方と活用例

2026/04/04
【番外-062】条件付き書式を一時的に無効にする方法

【番外-062】条件付き書式を一時的に無効にする方法

#条件付き書式

YouTubeで開く

条件付き書式の設定である「条件を満たす場合は停止」を活用して、条件付き書式を一時的に無効にする方法について解説しています。

00:00 挨拶
00:21 条件付き書式を無効にする方法
03:22 条件付き書式の無効化・有効化をシート上で切り替える

2026/04/03
【Excel】更新不要!商品ごとの最新価格を数式で自動抽出

【Excel】更新不要!商品ごとの最新価格を数式で自動抽出

以下の表は、商品の価格を管理したものです。
最新の価格を末尾に追加することで、各商品の価格の推移を管理しています。

この表から、数式だけで各商品の最新価格を抽出する方法について解説していきます。

※こちらで作成したファイルは、記事の最後にて配布しています。

今回紹介する数式を使えば、今後の更新も一切不要です。


1. テーブル化

数式を入力する前に、表のデータの増減に簡単に対応するため、対象の表を「テーブル」に変換します。

まずは、表の中にカーソルを移動させ、[挿入]タブから[テーブル]を選択します。

指定されている範囲が正しいことを確認し、表の先頭行が見出し行のため、[先頭行をテーブルの見出しとして使用する]にチェックした状態で確定します。

テーブルに変換すると、以下のようにデザインが変わってしまいます。

デザインは、[テーブルデザイン]タブの[テーブルスタイル]から簡単に変更することができます。
こちらでは、元の書式を生かすため、[テーブルスタイル]を[なし]にします。

フィルターボタンが不要な場合は、フィルターボタンのチェックを外しておきます。

次に、テーブル名を変更します。
テーブル名は[テーブルデザイン]タブから変更できます。
こちらでは「価格一覧」にしています。

以上の手順で、テーブルの完成です。


2. 数式の入力

次は、数式の入力です。
最新価格を表示する用の表の見出しは、数式ではなく直接用意しておきます。

見出しの用意ができたら、数式を入力していきます。

まずは、テーブルの商品名から重複を除いた一覧を数式で作成します。
指定した範囲から重複を除外するには、UNIQUE関数が便利です。

UNIQUE関数を活用する場合、以下のように入力します。

=UNIQUE(価格一覧[商品名])

数式を入力することで、以下のように商品名一覧を抽出できます。

テーブルの範囲は、構造化参照という特殊な参照方法で指定できます。
構造化参照については、以下で詳しく解説しています。
>構造化参照とは

次は、各商品の最新価格を抽出します。
まずは、先頭の「消しゴム」の最新価格のみを抽出していきます。
商品名が指定した値と一致する行の末尾の価格のみを抽出する場合は、XLOOKUP関数が便利です。

XLOOKUP関数を活用する場合、以下のように入力します。

=XLOOKUP(F3,価格一覧[商品名],価格一覧[価格],,,-1)
// F3:検索値
// 価格一覧[商品名]:検索範囲
// 価格一覧[価格]:抽出範囲
// (省略):見つからない場合
// (省略):一致モード(省略時は完全一致)
// -1:検索モード(「-1」は末尾から先頭へ検索)

数式を入力することで、以下のように最新価格を抽出できます。

他の行の商品も一括で抽出する場合は、XLOOKUP関数の検索値に商品名一覧の全体を指定します。
商品名一覧は1つの数式により展開されています。
そのような数式で展開されている範囲は、数式が入力されているセルに「#」を加えることで、全体を指定できます。

=XLOOKUP(F3#,価格一覧[商品名],価格一覧[価格],,,-1)

数式を入力することで、以下のように各商品の最新価格を一括で抽出できます。


3. 完成

以上の手順で完成です。
テーブルにデータを追加すると、自動でテーブルの範囲が拡張されます。
そのため、数式を更新する必要がなく、継続的に活用することができます。

▼サンプルファイル▼

2026/03/31
【Excel】離れている複数範囲を簡単にコピー&ペースト

【Excel】離れている複数範囲を簡単にコピー&ペースト

離れている複数のデータから一部のデータをコピー&ペーストで抽出する場合、よくある方法だと以下の方法があります。

・1件ずつ抽出

・複数選択して一括で抽出

今回はこれらの方法ではなく、1件ずつコピーし、ペーストを一括で行う方法について紹介します。
この方法の場合、コピーしたデータを一覧で確認しながら、必要に応じて、誤ってコピーしたデータを除外し、残ったデータを一括でペーストすることができます。


コピーは1件ずつ、ペーストは一括

今回は、Officeソフトに備わっている「クリップボード」を活用します。

実は、コピーした内容はOfficeソフトに備わっているクリップボードに記録されます。
クリップボードは、[ホーム]タブの[クリップボード]グループの右下にある矢印マークをクリックすることで表示できます。

クリップボードに何かしらデータが表示されている場合は、[すべてクリア]を選択します。

次に、クリップボードを表示している状態でセルをコピーすると、以下のように、コピーされたセルの情報がクリップボードに記録されていくのが確認できます。

最新のコピー情報が、クリップボードの一番上に追加されていきます。

必要なデータをクリップボードに記録することができたら、貼り付け先のセルを選択して、[すべて貼り付け]を選択します。
この手順で、記録されたデータを一括で貼り付けることができます。

貼り付けられる順番はコピーした順番になるため、クリップボードに表示されている順番とは逆になります。

Officeのクリップボードには、最大24件まで記録することができます。

誤ってコピーしてしまった場合は、クリップボードの対象データの上にカーソルを移動すると下向き矢印のアイコンが表示されるため、そのアイコンをクリックしたときに表示されるメニューから削除することができます。

[貼り付け]を選択した場合は、単体のデータが貼り付けられます。


補足

Officeのクリップボードには、セルの情報以外にもコピーした情報が記録されます。
コピー元は、左側に表示されるアイコンで確認することができます。

ただ、文字列以外(画像や図形など)の情報を記録した場合は、Excelでは[すべて貼り付け]が使えなくなるので注意してください。

2026/03/28
【業務】行データを指定したシートに瞬間移動

【業務】行データを指定したシートに瞬間移動

#標準モジュール #For #If #With #Delete

YouTubeで開く

各行のデータに対してシート名を指定するだけで、指定したシート先に対象データを瞬時に移動する機能を実現しています。
また、移動したデータを元の表に戻す取り消し機能も実現しています。

00:00 挨拶
00:23 完成イメージ
02:27 準備
03:01 作成(データ移動機能)
12:29 作成(取り消し機能)
15:43 作成(ドロップダウンリスト)
16:37 作成(ボタンの用意・シートの複製)
18:12 完成
19:17 プログラムの全体

▼準備ファイル▼

2026/03/27
【ExcelVBA】入力後に好みのセルに移動する技(入力順を自由に指定)

【ExcelVBA】入力後に好みのセルに移動する技(入力順を自由に指定)

以下は、請求書のフォーマットのサンプルになります。

このフォーマットに以下の順番で値を入力するとき、毎回カーソルを移動するのは面倒になります。

そこで今回は、セルF3に値を入力して確定したらセルF4、セルF4に値を入力して確定したらセルB4と、好みの順番で遷移させる仕組みの実現方法について解説していきます。

※こちらで作成したファイルは、記事の最後にて配布しています。


1. 開発準備

以下のフォーマットを元に作成していきます。

今回は、セルを編集して確定すると同時に、予め指定したセルに遷移させる仕組みを実現します。
そのような、特定のシートのセルを編集すると同時に何かしらの処理を実行するには、「シートモジュール」「イベントプロシージャ」を活用します。
シートモジュールは、対象シートのタブ上で右クリックし、[コードの表示]を選択することで表示できます。

選択すると、以下のエディタ画面(VBE)が表示されます。
また、対象シートのシートモジュールが表示された状態になります。
「Option Explicit」は、VBEの設定次第では表示されません。「Option Explicit」についての解説はこちらでは省略します。

次に、対象シートのセルを編集すると同時に処理が実行される特殊なプロシージャ(イベントプロシージャ)を用意する必要があります。
そのためには、シートモジュールの左上のリストから「Worksheet」を選択します。

「Worksheet」を選択すると、自動で「Worksheet_SelectionChange」というプロシージャが表示されます。
このプロシージャは、対象シートのいずれかのセルが選択されると同時に処理が実行されるイベントプロシージャになります。

ただ、今回使用するイベントプロシージャは、セルを編集すると同時に処理が実行されるものになります。
そのため、右上のリストから「Change」を選択します。

表示された「Worksheet_Change」というプロシージャを活用します。
「Worksheet_SelectionChange」というプロシージャは削除して問題ないです。


2. コードの記述

以下のコードを記述します。

Private Sub Worksheet_Change(ByVal Target As Range)

    Select Case Target.Address(False, False)
        Case "F3"
            Range("F4").Select
        Case "F4"
            Range("B4").Select
        Case "B4"
            Range("C7").Select
        Case "C7"
            Range("C8").Select
        Case "C8"
            Range("C9").Select
        Case "C9"
            Range("B14").Select
    End Select

End Sub

では、コードについて解説していきます。

Private Sub Worksheet_Change(ByVal Target As Range)

    '省略

End Sub

「Worksheet_Change」というプロシージャの引数「Target」に、編集されたセルの情報が渡されます。
複数セルを同時に編集した場合は、複数セルの情報が渡されます。

    Select Case Target.Address(False, False)
        Case "F3"
            Range("F4").Select
        Case "F4"
            Range("B4").Select
        Case "B4"
            Range("C7").Select
        Case "C7"
            Range("C8").Select
        Case "C8"
            Range("C9").Select
        Case "C9"
            Range("B14").Select
    End Select

編集されたセルのアドレスを相対参照(F3やF4など)で取得し、取得されたアドレスに対しての遷移先を指定しています。
セルF3が編集された場合は、「Case “F3″」の中が実行され、セルF4が選択されます。
セルF4が編集された場合は、「Case “F4″」の中が実行され、セルB4が選択されます。
候補にないアドレスの場合は、何も実行されません。


3. 完成

以上の内容で実現できます。
編集されたセルのアドレスが、予め指定したアドレスの場合は、指定したセルに自動で遷移します。

以下の表の中は、標準機能で簡単に移動できます。

表の中の移動については、以下の記事を参考にしてください。
>【Excel】表へのデータ入力を快適にするテクニック

▼サンプルファイル▼

2026/03/24
【Excel】VLOOKUP関数の近似一致とは?

【Excel】VLOOKUP関数の近似一致とは?

VLOOKUP関数は有名ですが、「近似一致」を使ったことがないという方は意外と多いです。

ということで、今回は「近似一致」の使い方について解説していきます。


近似一致の活用

以下は、距離と交通費の関係を表した表から、指定した距離の交通費を抽出する数式になります。

=VLOOKUP(E3,B3:C9,2,FALSE)

上記の数式は、「完全一致」を指定しています。
この指定の場合、一致する距離がないときはエラーになってしまいます。

では、以下の「近似一致」にした数式にしてみます。

=VLOOKUP(E3,B3:C9,2,TRUE)

この数式の場合は、エラーではなく値が抽出されます。

「完全一致」では、検索値と同じ値が見つからない場合はエラーになってしまいます。
しかし、「近似一致」ではエラーになりません。

「近似一致」は、検索値以下の値で一番大きい値のものを基準に抽出するという設定になります。
そのため以下の場合は、検索値「7」なので、「7以下で一番大きいものを基準に抽出する」ということになり、7以下で一番大きい値は「5」になるため、その行の値(「200」)が抽出されました。

検索値を「23」に変更してみると、それ以下で一番大きい値は「20」になるため、「350」が抽出されます。

これが「近似一致」です。
ただ「近似一致」を使う際は、次のことに気を付ける必要があります。


近似一致の注意点

VLOOKUP関数の「近似一致」を活用する際は、検索項目の値が「必ず昇順(小さい順)」である必要があります。

正しく並べられていない場合は、以下のように正しく抽出できないことがあります。


補足(XLOOKUP関数について)

昇順でない項目を基準に「近似一致」で抽出したい場合は、XLOOKUP関数が便利です。
XLOOKUP関数は、Excel2021以降のバージョンで使用できます。

XLOOKUP関数で指定する場合は、以下の数式になります。

=XLOOKUP(E3,B3:B9,C3:C9,,-1)

XLOOKUP関数については、以下の記事にて詳しく解説しています。
>VLOOKUP / INDEX・MATCH / XLOOKUPの使い方と違い

2026/03/23
【便利】複数選択可能な「リストボックス」で値入力

【便利】複数選択可能な「リストボックス」で値入力

#シートモジュール #ユーザーフォーム #Worksheet_BeforeDoubleClick #UserForm_Initialize #If #For #ActiveCell

※サイト内の限定動画です。

複数選択可能なリストボックスで、セルに値を入力することができる仕組みについて解説しています。
複数選択した各要素は、カンマ区切りでセルに入力されます。
また、要素の順番は固定で、「A,B」と「B,A」といった不規則な順番にならないようになっています。

00:00 挨拶
00:44 完成イメージ
01:28 準備
01:37 作成(フォームのデザイン)
04:09 作成(フォームの初期値の設定)
11:53 作成(リストボックスの値を反映)
16:32 作成(リストボックス自動立ち上げ)
19:29 完成
20:43 プログラムの全体

▼準備ファイル▼

2026/03/21
【便利】覗き見対策!選択時だけ表示される仕組み

【便利】覗き見対策!選択時だけ表示される仕組み

#シートモジュール #Worksheet_SelectionChange #With #If #For #ColorIndex #Borders #Font #イベントプロシージャ

YouTubeで開く

予め指定した範囲のセルの値を常時非表示にし、選択したときのみ表示させる仕組みになります。
必要最低限の情報のみを表示できるので、覗き見対策として有効です。

00:00 挨拶
00:22 完成イメージ
00:58 準備
01:21 作成(表示・非表示の切り替え)
11:09 完成
12:42 プログラムの全体

▼準備ファイル▼