範囲内でのコードの記述

範囲内でのコードの記述

私は職場のツールがどこにあるかを追跡するための Excel プログラムを作成しています。あるページから別のページにデータを移動しようとしています。情報にアクセスするために VLookup を使用していますが、詳細が見つかったら他のページの内容をクリアできるようにしたいと考えています。問題は、行を検索してその行の内容をクリアできる数式を VBA コードに記述することです (これはすべてをアクティブにするボタンであるため)。行を検索するためにランダムなセルに一致数式を入れて、それを範囲に自動的に入力しようとしました。これがどのように可能か知っている人はいますか? これは私が試していることです。X1 にはそのセルに一致数式があります。

Sheets("Running.Sheet").Range("A"Running.Sheet").Range("X1").Value).ClearContents

答え1

もうすぐです。

Sheets("Running.Sheet").Range("A" & Sheets("Running.Sheet").Range("X1").Value).ClearContents

シートの変数を宣言し、シート名を変数に割り当てて、その変数を使用することで、コードをもう少し管理しやすくすることができます。次のようになります。

Dim ws As Worksheet
Set ws = Sheets("Running.Sheet")

ws.Range("A" & ws.Range("X1").Value).ClearContents

設定には少し手間がかかりますが、同じシートを参照する頻度が高くなるほど効率が向上します。

関連情報