
WorkSeet Chengeで
If Target.Range("E20:E100") Then
If Target.Offset(0,1)<>"" Then
Target=Target.Offset(-1,0)
End If
End If
E20からE100の間でもし右隣のセルに何か入力されたら上のセルと同じ値を表示する、ということをやりたいのですが、一行目でエラーになってしまいます。
選択範囲の指定の仕方が間違っているのでしょうか?
教えて下さい。
初歩的な質問で恐縮ですが、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
こうしたいってことでしょか?
If Target.Row >= 20 And Target.Row <= 100 And Target.Column = 5 Then
If Target.Offset(0, 1) <> "" Then
Target = Target.Offset(-1, 0)
End If
End If
難しいですが、
Target.Range("E20:E100")
これだと、「変更したtargetがRange("E20:E100")かどうか」ではなく「変更したtargetの中にはRange("E20:E100")が存在するかどうか」
という意味になってしまいます。でも、targetはひとつのセルでしかないので、その中にセル列が存在することはないのでエラーとなってしまいます。
なので、「変更したtargetは20行以降であり、100行以内であり、5列目であるかどうか」という質問で無いと意味が成り立たなくなります。
- - - - - -
ただ、このソースだと望みの結果になってないような……
「E列の内容を変更した際、右隣にデータがあったら上のものを同じにする」でしたらいいのですが、
「E列の右隣のセルの内容を変更した際、その変更したセルにデータがあったら上のものを同じにする」
という場合、Target.Column = 5ではなくTarget.Column = 6となります。
いろいろ難しいところはありますが、この勉強はどの局面でも役立ちますからがんばってくださいませ。
やはり範囲の指定の仕方が間違っていたんですね。
大変分り易く説明して頂き助かります。
おっしゃる通りに直して無事解決しました。
回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) エクセル VBAで複数セル選択時エラーになる問題 3 2022/10/04 02:40
- Visual Basic(VBA) [Excel VBA] このコードでは行の挿入や行の消去をすると13のエラーが出てしまう。 3 2022/12/09 00:29
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/05/26 17:19
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Visual Basic(VBA) エクセルのVBAでダブルクリックでチェックを入れたあと 1 2022/10/26 20:30
- Excel(エクセル) エクセルのイベントプロシージャーでF列の最終行のセルの入力をトリガーにしたいのですが 1 2022/10/14 09:36
- Visual Basic(VBA) エクセルで、1つのセルで上書き足し算して セルの範囲を指定できますか? パソコン初心者です。 お時間 3 2023/07/05 06:13
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
このQ&Aを見た人はこんなQ&Aも見ています
-
targetをA列のセルに限定するには?
Visual Basic(VBA)
-
エクセル マクロで セルの範囲を指定する方法
Visual Basic(VBA)
-
VBA:結合されたセルに対する「Target」について
Access(アクセス)
-
-
4
エクセルのVBA 特定のセルでエンターキーでマクロ実行
Excel(エクセル)
-
5
データが入力されている隣のセルに当日日付と時刻を入力するExcel VBAプログラム
Visual Basic(VBA)
-
6
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
7
特定セルの内容を更新したら、その更新日を自動的に表示する方法について
Excel(エクセル)
-
8
エクセルVBAでTargetのセルに設定された「名前の定義」の取得方法は?
Excel(エクセル)
-
9
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
10
特定のセルがアクティブになったときのイベント?
Excel(エクセル)
-
11
「Cancel = True」とはどういう意味でし
Word(ワード)
-
12
EXCEL:特定の文字が入力された日付を表示する方法
Excel(エクセル)
-
13
すでにコピーした情報を貼り付けたらイベントを発生
PowerPoint(パワーポイント)
-
14
他のシートの特定のセルが変わると、自動実行されるマクロについて
Excel(エクセル)
-
15
Excel VBA 空白セルがあったらメッセージボックスで知らせたい
Visual Basic(VBA)
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
他シートのある列を検索して一...
-
Googleスプレッドシートで合計...
-
エクセルで0.0と表示したい
-
【EXCEL】関数で計算された数字...
-
vlookupで返された値が空白だっ...
-
エクセル 小数点第2位 切捨て...
-
エクセル 絶対値の合計
-
Excelで方眼紙を作り、そこに手...
-
Excelで合計の金額を違うセルに...
-
エクセル 数式を表示させるには?
-
-EXCEL- 突然、関数が無効に...
-
セルの数式を計算させないで文...
-
excelで小数点0を表示させる方法
-
Excel VBAにてUserFormのTextBo...
-
エクセルで網掛けをしたセルを...
-
エクセルの文字列を結合しても...
-
エクセル スペースを排除するには
-
EXCEL VBA 選択範囲をTargetに
-
EXCELで条件付きの連番を振る方法
-
エクセルでデーターをクリック...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
他シートのある列を検索して一...
-
Googleスプレッドシートで合計...
-
【EXCEL】関数で計算された数字...
-
vlookupで返された値が空白だっ...
-
excelで小数点0を表示させる方法
-
エクセルで0.0と表示したい
-
エクセル 絶対値の合計
-
エクセルの文字列を結合しても...
-
エクセル .50以下で切り捨て、...
-
セルの数式を計算させないで文...
-
Excel VBAにてUserFormのTextBo...
-
Excelで合計の金額を違うセルに...
-
EXCEL VBA 選択範囲をTargetに
-
Excelで方眼紙を作り、そこに手...
-
エクセルつくったグラフで10月...
-
エクセル 背景色のついたセル位...
-
マクロ クリックしたら色変わる
-
エクセルへバーコードリーダー...
-
EXCELで上位10個のデータを平均...
-
エクセルで運賃計算
おすすめ情報