| 
    
     |  | ブックの構成 
 ●1枚目:使わないシート
 ●2枚目〜8枚目:縦に結合したいシート
 それぞれ同じフォーム「A5〜F15にデータあり」
 ただし、5行目はタイトル行
 
 したいこと
 ●2枚目〜8枚目を縦に結合したい。
 ●タイトル行は先頭のみ必要
 
 という前提で以下のコードを書きました。
 しかし、A列の左に1列追加して(罫線などの書式はA列と同じ)
 シート名を各行のA列として縦にくっつけたいという要望がありました。
 これに対応したいのですが、どう書いていいのか分かりません。
 
 
 ●1列追加のところはチャレンジしたましたが、エラーが出ました。
 ●シート名を各行のA列として縦にくっつける部分は全く分かりません。
 
 申し訳ないですが、プログラムを教えてもらえないでしょうか?
 よろしくお願いします。
 
 
 Sub 結合()
 Dim Worksheet As Worksheet
 Dim DATA1 As Range, DATA2 As Range
 Dim i As Integer
 
 '入力ボックスにてシート名前、出力先、出力データセットを入力する。
 '先頭にシートを作成する
 Sheets(3).Copy before:=Sheets(1)
 Sheets(1).Name = "縦結合"
 
 
 '最初にデータセットを出力する位置を設定する
 Set DATA1 = Worksheets("縦結合").Range("A6")
 
 For i = 3 To Worksheets.Count
 '結合したいデータセットをDATA2として読み込む。
 Set DATA2 = Sheets(i).Range("A6:F15")
 'DATA1をDATA2とする。
 DATA2.Copy DATA1
 '次のデータセットを出力する位置を設定する。
 Set DATA1 = DATA1.Offset(DATA2.Rows.Count)
 Next
 
 'A列をコピーして挿入する
 Sheets(1).Range("A").Copy
 Sheets(1).Range("B").Insert
 
 
 'データセットをリセットする。
 Set DATA1 = Nothing
 Set DATA2 = Nothing
 
 End Sub
 
 
 |  |