0

私はVBAで非常に奇妙な状況にあります。私はVBAが初めてで、この問題を解決するのに数日苦労しています。

Excel シートの先頭 3 行と最初の 3 列を編集用にロックしたいと考えています。ただし、これらのセルには数式が含まれているため、エンド ユーザーが編集して変更することは望ましくありません。したがって、基本的に必要なのは、セルがすべての操作を実行する必要がありますが、編集する必要はありません。どうすればVBAでできますか。エクセル2010を使用しています。

もう 1 つ、一番上の行に($B$2:$C$3)4 つのセルを占めるボタンがあります。このボタンは、ロックしようとしているセルを除くすべてのセルの内容をクリアするマクロに割り当てられています。つまり、他のセルでは、ユーザーはメモ帳からデータをエクスポートでき、その後、ロックされたセルの数式が機能します。ユーザーが新しいデータ セットをエクスポートする必要がある場合は、 にあるボタンをクリックします。これにより($B$2:$C$3)、既存のデータがクリアされ、ユーザーはメモ帳から新しいデータ セットをインポートできます。

私が使うとき

Worksheets("Sheet1").Range("B2:C3").Locked = False

Worksheets("Sheet1").Protect UserInterfaceOnly:=True 

私のボタンが($B$2:$C$3)正しく機能していません。誰からの助けも非常に求められます。よろしくお願いします。

4

1 に答える 1

0

これを試して:

Worksheets("Sheet1").Range("B2:C3").Locked = true

Worksheets("Sheet1").Protect UserInterfaceOnly:=True 

これで問題は解決するはずです。

于 2013-03-28T13:59:51.280 に答える