|
このプログラムはAB列5行の表のデータ入替処理するものです。
AB列とも1行から5行に1から5の数字が入力されています。
この度プログラムの中に書いたような問題が発生しましたので
ご教示かた宜しくお願いします。
Public Sub test()
Dim a1 As Integer, b1 As Integer
Dim a1b1 As Range, a5b5 As Range
Dim a1b4 As Range, a2b5 As Range
'1.変数にセルの値を代入
a1 = Range("a1").Value
b1 = Range("b1").Value
Set a1b1 = Range("a1:b1")
Set a5b5 = Range("a5:b5")
Set a1b4 = Range("a1:b4")
Set a2b5 = Range("a2:b5")
'2.2〜5行データを1〜4行に移動
a1b4.Value = a2b5.Value
'3.最初(移動前)の1行目にあったデータを5行に表示します
a5b5.Value = a1b1.Value
'結果は移動後の1行目のデータが表示され意図したものになりません
'4.そこで次のようにしたら意図した結果となりました。
' Range("a5").Value = a1
' Range("b5").Value = b1
'プログラム2.で2〜5行データを1〜4行に移動した後でも変数a1,b1の値は
'変わらないのに Set a1b1 = Range("a1:b1")では a1b1 の値がどうして変わる
'のでしょうか? Set a1b1 = Range("a1:b1")では処理不可能でしょうか?
End Sub
|
|