Private Sub CommandButton1_Click()
'基本データはテキストファイルとして保存しておき、[データ][外部データの取り込み]により
'A1:D5 の範囲にインポートします。
'ワークシート上に[開発][挿入][ActiveXコントロール]のコマンドボタンを配置し、
'クリック時イベントプロシジャに以下のように実行して何とか目的を達成しました。
Dim A As Range, B As Range, C As Range, D As Range, i As Integer
Dim E As Range, F As Range, G As Range, H As Range
Dim R1 As Range, R2 As Range, R3 As Range, R4 As Range, R5 As Range
Dim T1 As Range, T2 As Range, T3 As Range, T4 As Range, T5 As Range
Dim S As Worksheet
Set S = Worksheets("Sheet1")
Set A = S.Range("A1:A5")
Set B = S.Range("B1:B5")
Set C = S.Range("C1:C5")
Set D = S.Range("D1:D5")
Set E = S.Range("A11:A15")
Set F = S.Range("B11:B15")
Set G = S.Range("C11:C15")
Set H = S.Range("D11:D15")
'(1)、B列 C列をコピーして別の場所貼り付ける
B.Copy E
C.Copy F
'(2)、B列 をコピーして(1)の次の列に貼り付ける
B.Copy G
'(3)、D列 をコピーして(2)の次の列に貼り付ける
D.Copy H
'(4)、B列 C列を入れ替える
E.Copy C
F.Copy B
'(5)、空白の行を(1)の1行目のあと、2行目のあと、3行目のあと、4行目のあとに挿入
S.Rows(2).Insert Shift:=xlShiftDown
S.Rows(4).Insert Shift:=xlShiftDown
S.Rows(6).Insert Shift:=xlShiftDown
S.Rows(8).Insert Shift:=xlShiftDown
Set T1 = S.Range("A2:D2")
Set T2 = S.Range("A4:D4")
Set T3 = S.Range("A6:D6")
Set T4 = S.Range("A8:D8")
Set T5 = S.Range("A10:D10")
Set R1 = S.Range("A15:D15")
Set R2 = S.Range("A16:D16")
Set R3 = S.Range("A17:D17")
Set R4 = S.Range("A18:D18")
Set R5 = S.Range("A19:D19")
'(6)、(1)(2)(3)を1行ずつ(5)の空白行に貼り付ける
R1.Copy T1
R2.Copy T2
R3.Copy T3
R4.Copy T4
R5.Copy T5
End Sub