▽1
●
a-kuma3 ●1000ポイント ベストアンサー |
A1 を手入力すると、B1, C1, D1, C7?, D7? の数値が変わる、ってことで良いんですよね。
=VLOOKUP(A1,A7:B20,2)
二番目の引数は、検索対象範囲で、B20 の 20 は、好きなだけ下に延ばしてください。
C7 が C$1 になってるのは、式のコピペが楽だからです。
こういう感じで操作します。
リストボックスを選び終わると、ウィンドウの中には、こんなのが表示されています。
Private Sub Worksheet_Change(ByVal Target As Range) End Sub
そこに、以下のようなコードを入力します。
Private Sub Worksheet_Change(ByVal Target As Range) ' ★ここから Const r_start = 7 Const r_end = 20 Application.EnableEvents = False a1 = Range("a1").Value For i = r_start To r_end If (a1 = Cells(i, 1).Value) Then Range("b1").Value = Cells(i, 2).Value Range("c1").Value = a1 + Range("b1").Value Range("d1").Value = Range("b1").Value - a1 Exit For End If Next For i = r_start To r_end Cells(i, 3).Value = Range("c1").Value Cells(i, 4).Value = Range("d1").Value Next Application.EnableEvents = True ' ★ここまで End Sub
Private Sub Worksheet_Change(ByVal Target As Range) Const r_start = 7 Const r_end = 20 Application.EnableEvents = False For i = r_start To r_end Cells(i, 3).Formula = Replace(Range("c1").Formula, "1", CStr(i)) Cells(i, 4).Formula = Replace(Range("d1").Formula, "1", CStr(i)) Next Application.EnableEvents = True End Sub