質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%

Q&A

2回答

3267閲覧

Excelの別シートの指定セルの値を削除したい

K.T.K

総合スコア0

0グッド

0クリップ

投稿2023/07/23 04:05

実現したいこと

Excelの別シートの指定セルの値を削除したい

前提

Excel VBA 初心者です。
別シートの指定したセルの値を削除したいのですが出来ません。

発生している問題・エラーメッセージ

以下のようにに記述してセレクトは出来ています。
Range(Range("A10"), Range("A20")).Select

ですが

Range(Range("A10"),

1 2 3  A2以下のデータが削除されてしまいます。 4 5Range(Range("A10"), Range("A20"))..ClearContents 6 7指定のセルの値を削除することは出来るでしょう? 8 9エクセルは Excel2016 H&Bです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

meg_

2023/07/23 04:38

質問のコード「Range(Range("A10"), Range("A20"))..ClearContents」はコンパイルエラーになるかと思います。「A2以下のデータが削除されてしまいます。」となった実際のコードを貼っていただけますでしょうか?
guest

回答2

0

通常A10からA20の範囲を消去するには
Range("A10:A20").ClearContents
を使うと思います。
Range(Range("A10"), Range("A20")).ClearContents
このような書き方は私はしません。

お題が,「Excelの別シートの指定セルの値を削除したい」なので複数のシートを使っていると思います。例えばsheet1,sheet2を使っているとします。
VBAのエディタを開いて,表示メニューからオブジェクトブラウザを選ぶと,左側のペインにSheet1,Sheet2,ThisWorkbookのアイコンが見えると思います。どれか1つをダブルクリックするとVBAのエディタが開きます。それぞれExcelのSheet1用,Sheet2用,Workbook全体用のプログラムコードを書く場所になっています。

もし,ExcelnのSheet1を開いていて,Sheet2用のプログラムコードを実行させると,(例えばRange("A10:A20").ClearContents)エラーになってしまします。(おそらく質問者さんはこのような状況かと想像します。違っていたらごめんなさい。)
ExcelのSheet1のセルを操作するVBAのプログラムコードはSheet1用のものでなければなりません。

ExcelnのSheet1を開いておいて,Sheet1用のプログラムで
Range("A10:A20").ClearContents
を実行すると,ExcelのSheet1のA10からA20の範囲が消去されます。
お題にあるように,Sheet1用のプログラムからSheet2のA10からA20の範囲を消すには
Worksheets("sheet2").Range("A10:A20").ClearContents
のようにします。

Workbook全体用のプログラムではどのSheetへの作業かをActivateで知らせてからセルへの作業をします。こうすることによって複数のSheetのセルに対して自由に操作できるようになります。Excel側ではどのSheetを開いていてもOKです。

VBA

1Worksheets("sheet1").Activate 2Range("A10:A20").ClearContents 3Range("B10:B20").ClearContents 4Worksheets("sheet2").Activate 5Range("C10:C20").ClearContents 6Range("D10:D20").ClearContents

質問にうまくかみ合えばよいのですが。

投稿2023/07/28 17:07

Tommy53

総合スコア2

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

質問ありがとうございます。

Range(Range("A10"), Range("A20")).ClearContents ダメでした。
Range("A10:A20").ClearContents ダメでした。

よろしくお願いいたします。

投稿2023/07/23 13:03

K.T.K

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問