|
▼UO3 さん:
いつも丁寧な解説をありがとうございます。
感謝いたします。
>▼隼 さん:
>
>このコードがやっていることは
>
>入力が「A1」の時のみ実行する。(「B1」への入力時は何もしない)
>で、「A1」が"H"なら C列の「未出力セル」に、「B1」の値をセット
>「A1」が"L"なら D列の「未出力セル」に、「B1」の値をセット
>
>ですので、B1 にいれる前に A1 にいれても、入力のないB1を相手に処理されるだけ。
>その後、B1に何をいれても、処理されません。
>
>もし、「B1」に入力した時に、「A1」の値によって、「B1」の値を
>C列またはD列にセットするなら以下ですね。
>もし、「A1」に入力した時も、「B1」に入力した時も、その時点でのA1やB1の値を相手に
>処理するなら、また別のコードになります。
>
>それと、C10000 といった、固定セル名は使わないほうがいいですね。
>
>Private Sub Worksheet_Change(ByVal Target As Range)
> Dim S As String
>
> If Target.Address(0, 0) <> "B1" Then Exit Sub
> S = Target.Offset(, -1).Value 'A1の値
>
> Select Case S
> Case "H": Range("C" & Rows.Count).End(xlUp).Offset(1).Value = Target.Value
> Case "L": Range("D" & Rows.Count).End(xlUp).Offset(1).Value = Target.Value
> End Select
>
>End Sub
|
|