0

ログイン情報に基づいてユーザーから情報を収集する Excel ツールがあります。情報は、ワークシートの 1 つのセルに格納されます。これらのセルを手動で更新できないようにロックしたい場合は、どうすればよいですか? 他の誰かがログインすると、明らかにこれらのセルが変更されます。VBAでやりたいと思っています。

6つのセルだけをロックしたい...他のすべては編集可能でなければならない...

ありがとう

4

2 に答える 2

4

次のようなパスワードでワークシートを保護できます。

Private Sub Workbook_Open()
    Sheets("sheetName").Protect Password:="YourPassword", UserInterfaceOnly:=True
End Sub

これにより、ユーザーはパスワードを入力せずにワークシートを手動で変更できなくなります。UserInterfaceOnlyに設定しているため、VBA コードは引き続き変更を加えることができますTrue

ユーザーは、Visual Basic エディターを介してコードに移動することで、このパスワードを簡単に表示できることに注意してください。ただし、コードをパスワードで保護することもできます。モジュールを右クリックし、VBAProject プロパティをクリックして、[保護] タブに移動します。

詳細については、このページを参照してください: Excel VBA: 保護されたワークシートとシートでマクロを実行するためのマクロ コード.

于 2012-04-11T18:35:22.547 に答える
0

これらのセルが保護したいシート上の唯一のセルである場合は、Lockedプロパティをfalseに変更して残りのセルのセルプロパティを変更し、問題のセルをそのままにして、 setをtrueに設定しLockedてシートを保護UserInterfaceOnlyします(ただし、これを理解してください可能性のあるすべてのマクロ変更に対して機能するとは限らないため、通常は回避します。)

他にも有効な方法がありますが、これが最適な解決策だと思います。そうでない場合は、コメントを追加してお知らせください。

于 2014-09-22T12:25:02.633 に答える