|    | 
     こんにちわ。 
 
 1行目と2行目を固定の項目として、3行目からデータが変更されれば、その都度Excelファイルが 
作成される処理をしております。 
 この処理にさらに、別シート(Sheet2)のB6〜I33をコピーして、振分作成されるExcelファイル 
に挿入される処理を作成しようと思います。 
 別シート(Sheet2)のB6〜I33は固定で全てのExcelファイルに挿入しようとしてます。 
  
  
例) 
  題名1   
  題名2 
  データ 
  データ 
  データ 
   
  ---------------------------------------------- 
   (Sheet2)のB6〜I33 
  ---------------------------------------------- 
 
コメント「'◆テスト」にテスト的に記入してみたのですが、思うように処理できません。 
ご存知の方がおりましたら、ご教授いただきたくよろしくお願いします。 
 
 
--------------------------------------------------------------------------------------------- 
Private Sub CommandButton1_Click() 
 
  Dim WS1 As Worksheet 
  Dim Tbl As Range 
  Dim v, i As Long, n As Long, n1 As Long 
  Dim myPath As String 
  Dim newBook As Workbook 
  Dim Bookname As String 
  
  Application.DisplayAlerts = False 
  
  myPath = ActiveWorkbook.Path & "\" 
  Set WS1 = ActiveWorkbook.Worksheets("Sheet1") 
 
  'Set Tbl = ActiveSheet.[A1].CurrentRegion '◆ A列で Sort済み 
  Set Tbl = WS1.[A1].CurrentRegion '◆ A列で Sort済み 
 
  n = Tbl.Rows.Count 
  v = Tbl.Resize(n + 1, 1).Value 
  n1 = 3    '◆変更 
  For i = 3 To n '◆変更 
    If v(i, 1) <> v(i + 1, 1) Then '下と違えば 
      With Workbooks.Add(xlWBATWorksheet) '◆変更 シート1枚のBook 
        Tbl.Rows("1:2").Copy .Sheets(1).[A1] '◆見出し行2行をCopy 
        Tbl.Rows(n1 & ":" & i).Copy .Sheets(1).[A3] '3行目へ 
                 
        .Sheets(1).UsedRange.EntireColumn.AutoFit '◆挿入 
         
         
        Range("B23:E23").Select  '◆テスト 
        Selection.Copy      '◆テスト 
        Sheets("Sheet1").Select  '◆テスト 
        ActiveSheet.Paste     '◆テスト 
 
 
     With ActiveSheet.PageSetup 
     .PrintTitleRows = "$1:$1" 
     .PrintTitleColumns = "" 
     End With 
  ActiveSheet.PageSetup.PrintArea = "" 
  With ActiveSheet.PageSetup 
    .LeftHeader = "" 
    .CenterHeader = "" 
    .RightHeader = "" 
    .LeftFooter = "" 
    .CenterFooter = "" 
    .RightFooter = "" 
    .LeftMargin = Application.InchesToPoints(0.787) 
    .RightMargin = Application.InchesToPoints(0.787) 
    .TopMargin = Application.InchesToPoints(0.984) 
    .BottomMargin = Application.InchesToPoints(0.984) 
    .HeaderMargin = Application.InchesToPoints(0.512) 
    .FooterMargin = Application.InchesToPoints(0.512) 
    .PrintHeadings = False 
    .PrintGridlines = False 
    .PrintComments = xlPrintNoComments 
    .PrintQuality = 200 
    .CenterHorizontally = False 
    .CenterVertically = False 
    .Orientation = xlLandscape 
    .Draft = False 
    .PaperSize = xlPaperA4 
    .FirstPageNumber = xlAutomatic 
    .Order = xlDownThenOver 
    .BlackAndWhite = False 
    .Zoom = False 
    .FitToPagesWide = 1 
    .FitToPagesTall = False 
    .PrintErrors = xlPrintErrorsDisplayed 
  End With 
        Bookname = v(i, 1) '↓ A列データが日付のときはBook名をFormatする 
        If IsDate(Bookname) Then Bookname = Format$(v(i, 1), "yy-mm-dd") 
        .SaveAs myPath & v(i, 1) & ".xls", FileFormat:=XlFileFormat.xlExcel8 
        .Close False 
      End With 
      n1 = i + 1 
    End If 
  Next 
 
  'Application.SheetsInNewWorkbook = nSheet 
   
  MsgBox "出力しました" 
 
 
End Sub 
 | 
     
    
   |