エクセルマクロの件
AとBにあるデータの一覧をCにコピーして、全体を日付順にソートするという処理をしたいと思っています。
そこでエクセルマクロにて
(1) Aのデータの必要部分をコピー、Cに貼り付け
(2) Bのデータの必要部分をコピー、Cに貼り付け
(3) 全体を日付順にソート
というものができました。
ただ、Bのデータを貼り付ける位置で問題が発生しています。
仮に、Aに200行までのデータが入っている場合、Bのデータを201行目に張り付けすれば問題ありませんが、Aのデータが増えたときにはAのデータの201行目以降はBのデータで上書きされてしまいます。
そこで、Bのデータを上記の例だと250行目あたりに張り付けするようにマクロを変えると、なぜかBのデータは一切Cに反映されなくなってしまいます。
この理由と、上記の対策があれば教えていただければと思います。
ちなみに、現在設定されているマクロは以下の通りです。
自動記録にてつくってあるので無駄な部分もあるかと思いますが、よろしければご覧いただければと思います。
Sheets("Aのシート").Select
ActiveWindow.SmallScroll Down:=-138
Range("A4:O200").Select
Selection.Copy
Sheets("Cのシート").Select
ActiveWindow.SmallScroll Down:=-162
Range("A4").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("Bのシート").Select
Range("G25:G28").Select
Range("G28").Activate
ActiveWindow.SmallScroll Down:=-30
Range("A4:O120").Select
Selection.Copy
Sheets("Cのシート").Select
ActiveWindow.SmallScroll Down:=147
Range("A181").Select
ActiveSheet.Paste
Cells.Select
Range("A4:O200").Select
Selection.Sort Key1:=Range("C4"), Order1:=xlAscending, Key2:=Range("D4") _
, Order2:=xlAscending, Key3:=Range("E4"), Order3:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin, DataOption1:=xlSortNormal, DataOption2:= _
xlSortNormal, DataOption3:=xlSortNormal
End Sub
補足
200列ほどいりますので、200回ポチはなかなか 今はボタンを2個作っていまして 1つのほうで、ソートをもう一つで移動させてと コードは超ながいですよ