プロが教えるわが家の防犯対策術!

過去に次のような質問をしている方がいました。

------------------------------
Excelでセルを一度だけ参照したい
例えば、
A1に「鈴木」
B1に「=A1」
C1に「=A1」

と入力するとします。
この場合、A1を「佐藤」に変更するとB1,C1,D1共に「佐藤」になります。

A1を「佐藤」に変更した時に、B1は「鈴木」のままでC1は「佐藤」と
B1に一度だけ参照させる方法はないでしょうか。
-------------------------------

自分の場合、A1からA100のセル範囲に変動する値が入り、対応するB1からB100のセルに1度だけ
参照させるようにしたいのです。
VBA初心者でまったく足がかりがありません。よろしくお願いします。

A 回答 (2件)

一例です。


対象シートタブ上で右クリック→コードの表示→サンプルコードを貼り付けてお試しください。

サンプルコード
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:A100")) Is Nothing Then Exit Sub
For Each a In Target
If a.Offset(0, 1) = "" Then
a.Offset(0, 1) = a
End If
Next
End Sub
    • good
    • 0
この回答へのお礼

感謝いたします。
ドンピシャリの期待通りの動作でした。
本当にありがとうございます。

お礼日時:2012/02/09 21:03

こんばんは!


外していたらごめんなさい。

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Columns(1)) Is Nothing Then Exit Sub
On Error Resume Next
If Target.Offset(, 1) = "" Then
Target.Offset(, 1) = Target
End If
Target.Offset(, 2) = Target
End Sub

こういう感じで良いのでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

こんばんわ。
こんなに早く回答いただけるとは思いませんでした。
早速試してみました。
正常に動作しました。
ありがとうございました。

お礼日時:2012/02/09 20:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!