Office
 Computer >> コンピューター >  >> ソフトウェア >> Office

VBA を使用して Excel でセルをロックおよびロック解除する方法

Excel でセル、列、および行をロックすると、データを自由に保護できます。ワークシートを保護すると、デフォルトですべてのセルがロックされます。これは、編集できないことを意味します。しかし、さまざまなセルを保護すると、保護されていないセルを自由に操作できます。ここでは、セルをロックおよびロック解除するためのさまざまな Excel テクニックを紹介します。多くのデフォルトの Excel 関数 があります 数式を作成するために使用できます。繰り返しますが、ワークシートを保護しない場合、セルをロックしても影響はありません。この記事では 6 を紹介します セルのロックとロック解除 の理想的な例 Excel で VBA を使用 .

次のワークブックをダウンロードして、自分で練習してください。

VBA を使用して Excel でセルをロックおよびロック解除する 6 つの理想的な例

エクセルVBA 多くの複雑なタスクを非常に簡単に実行できます。コードを入力するか、コードを書くだけです。この記事では、 VBA を適用します。 ロック セルのロックを解除 エクセルで .説明のために、サンプル データセットを使用します。たとえば、次のデータセットには Salesman が含まれています 、商品 、および 純売上高 セル範囲 B4:D10 .ここでは、さまざまなセル範囲をロックします。

VBA を使用して Excel でセルをロックおよびロック解除する方法

1. VBA を使用して Excel ワークシートのすべてのセルをロックする

最初の例では、Excel ワークシートのすべてのセルをロックする方法を示します。したがって、以下の手順に従ってタスクを実行してください。

手順:

  • まず、開発者 ➤ Visual Basic に移動します。 .

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • その結果、 VBA ウィンドウが飛び出します。
  • 次に、挿入 ➤ モジュールを選択します .

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • したがって、モジュール ダイアログ ボックスが表示されます。
  • 次に、以下のコードをコピーして、モジュール ボックスに貼り付けます。
Sub AllCells()
Sheets("All Cells").Cells.Locked = True
Sheets("All Cells").Protect
End Sub

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • ファイルを保存して F5 を押します。 コードを実行するためのキー
  • したがって、セルを編集または変更しようとすると、以下に示すような警告ダイアログ ボックスが表示されます。

VBA を使用して Excel でセルをロックおよびロック解除する方法

2.特定のセルをロックするための Excel VBA の適用

次に、特定のセルをロックするコードを示します。また、ロックとロック解除を制御するチェック ボックスを挿入します。したがって、操作を実行するには、次の手順を学習してください。

手順:

  • まず、セル範囲に B4:D10 という名前を付けます Table1 として .

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • 次に、開発者 ➤ 挿入 ➤ チェック ボックスをクリックします。 .

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • その後、必要な場所にチェック ボックスを配置します。
  • 次に、シート名を右クリックします。
  • [コードを表示] を選択します コンテキスト メニューから。

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • ポップアウト ダイアログ ボックスに以下のコードを入力してください。
Private Sub CheckBox1_Click()
Range("Table1").Select
On Error Resume Next
If CheckBox1.Value = True Then
    Selection.Locked = False
    MsgBox Selection.Address & " Cell Range is Unlocked", vbInformation, "ExcelDemy"
Else
    Selection.Locked = True
    MsgBox Selection.Address & " Cell Range is Locked", vbInformation, "ExcelDemy"
End If
End Sub

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • ファイルを保存し、F5 キーを押してコードを実行します。
  • したがって、ボックスをチェックすると、セルのロックが解除され、以下に示すようなダイアログ ボックスが返されます。

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • 同様に、ボックスのチェックを外すとセルがロックされます。

VBA を使用して Excel でセルをロックおよびロック解除する方法

3. VBA を使用して数式を含むセルのみをロック

ただし、数式があるセルのみをロックできます。したがって、数式でセルをロックするプロセスに従ってください。

手順:

  • まず、モジュールを取得します 例 1 の手順に従って .
  • ボックスに以下のコードを入力してください。
Sub LockCellsWithFormulas()
For Each Rng In ActiveSheet.Range("B5:D10")
If Rng.HasFormula Then
Rng.Locked = True
Else
Rng.Locked = False
End If
Next Rng
ActiveSheet.Protect "111"
End Sub

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • その後、RunSub をクリックします。 ボタンでコードを実行します。
  • ここで、数式を入力したセルがこのコードによってロックされることがわかります。
  • 例:D7 式があります。したがって、このセルは編集できません。

VBA を使用して Excel でセルをロックおよびロック解除する方法

4.一部のセルを除いてワークシート全体をロック

さらに、指定するいくつかのセルを除いて、ワークシート全体をロックできます。以下のコードを見てください B5:D10 ロックを解除しておきたい範囲です。この範囲外では、コードの実行後にワークシート全体がロックされます。

Sub WorksheetExceptFewCells()
Dim wb As Workbook
Set wb = ActiveWorkbook
wb.Sheets("Entire Worksheet Except Few").Range("B5:D10").Locked = False
wb.Sheets("Entire Worksheet Except Few").Protect passowrd = "111"
End Sub

VBA を使用して Excel でセルをロックおよびロック解除する方法

5. Excel でのデータ入力後にセルをロック

繰り返しますが、目的の範囲にデータを入力した後、セルをロックする必要があります。この例では、B4:D10 データを入力する範囲です。したがって、以下の手順に従って、Excel にデータを入力した後にセルをロックしてください。

手順:

  • まず、シート名を右クリックして [コードを表示] を選択します。 .
  • ダイアログ ボックスに次のコードを入力してください。
Dim rg As Range
Dim str As String
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("B4:D10"), Target) Is Nothing Then
    Set rg = Target.Item(1)
    str = rg.Value
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xg As Range
    On Error Resume Next
    Set xg = Intersect(Range("B4:D10"), Target)
    If xg Is Nothing Then Exit Sub
    Target.Worksheet.Unprotect Password:="111"
    If xg.Value <> str Then xg.Locked = True
    Target.Worksheet.Protect Password:="111"
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("B4:D10"), Target) Is Nothing Then
    Set rg = Target.Item(1)
     str = rg.Value
End If
End Sub

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • RunSub を押してコードを実行します。 ボタンまたは F5 キー
  • その後、範囲内にデータ値を入力します。
  • 自動的にロックされます。
  • 編集しようとすると、以下のような警告ダイアログ ボックスが表示されます。

VBA を使用して Excel でセルをロックおよびロック解除する方法

6. VBA を使用して Excel のセルのロックを解除

ここまで、セルをロックする方法について説明してきました。これで、以下のコードを使用して Excel ワークブックのセルのロックを解除できます。

Sub UnlockCells()
Sheets("Unlock Cells").Cells.Locked = False
Sheets("Unlock Cells").Unprotect
End Sub

VBA を使用して Excel でセルをロックおよびロック解除する方法

VBA を使用せずに Excel でセルをロックおよびロック解除する方法

VBA を使用せずにセルをロックおよびロック解除することもできます . セルの書式設定を使用できます セルをロック/ロック解除するためのダイアログ ボックス。 ロック済みのボックスをチェックする必要があります セルをロックしたい場合。同様に、セルのロックを解除するには、ボックスのチェックを外します。繰り返しになりますが、ワークシートまたはワークブックを保護していない場合、セルをロックしても影響はありません。

手順:

  • まず、ご希望の範囲を選択してください。
  • 次に Ctrl を押します と 1 キーを一緒に。
  • セルの書式設定を返します ダイアログ ボックス。
  • 保護の下で タブで、[ロック済み] をオンまたはオフにします。 必要に応じてボックスに入れます。

VBA を使用して Excel でセルをロックおよびロック解除する方法

  • ワークシートを保護する必要がある場合は、[確認] タブに移動してください。
  • [シートの保護] を選択します。 保護から 落選。
  • したがって、シートは保護されます。

VBA を使用して Excel でセルをロックおよびロック解除する方法

結論

今後は、 セルのロックとロック解除 が可能になります Excel で VBA を使用 上記の例に従います。 Excel で特定のセルをロックすると、データを他のセルから保護する自由が得られます。誤って削除したり、他の誰かがあなたのデータを破壊するのを防いだりするのに役立ちます。それらを引き続き使用し、タスクを実行する方法が他にある場合はお知らせください。 エクセルデミーをフォロー このような他の記事のウェブサイト。以下のコメント セクションにコメント、提案、またはクエリがある場合は、忘れずにドロップしてください。


  1. Excel で結合セルの代替行に色を付ける方法

    Microsoft Excel で大規模なデータ セットを操作する場合、別の色で行を 1 行おきに書式設定すると便利な場合があります。これにより、データのスキャンとパターンや傾向の特定が容易になります。 VBA を使用できます 結合されたセルに別の行の色を適用するコードは非常に簡単です。この記事では、Excel で結合されたセルの行の色を簡単に変更する方法を紹介します。それでは、これ以上の議論はせずに始めましょう。 次のリンクから Excel ファイルをダウンロードして、それに沿って練習できます。 Excel で結合セルの代替行に色を付ける手順 次のデータセットでは、一番左の列 Categ

  2. USB ペン ドライブを使用して PC をロックおよびロック解除する方法

    古いパスワード保護は歴史です。キーを使用して PC のロックを解除し、セキュリティを強化できるようになりました。ペン ドライブをコンピューターのロックおよびロック解除キーに変換できるオンライン ツールは多数あります。今日は、そのようなプログラムの 1 つ、Predator についてお話します。 いいえ、ウイルスやランサムウェアについて話しているのではなく、もっと便利なものについて話しているのです。 Predator は、USB フラッシュ ドライブを取り外したときにコンピューターをロックするキーに変える無料の Windows ソフトウェアです。シークレットエージェントと同じように、プラグインし