Excel for .NET
既存ワークブックの行を新規ワークブックへコピーする

このセクションでは、既存ワークブックの行を新規ワークブックへコピーする方法を説明します。

  1. 既存ワークブックをロードします。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Dim wb As New C1XLBook()
    wb.Load("C:\test.xls")
    

    C# コードの書き方

    C#
    コードのコピー
    C1XLBook wb = new C1XLBook();
    wb.Load(@"C:\test.xls");
    
  2. 新規 XLSheetを作成します。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Dim xb As New C1XLBook()
    xb.Sheets.Add("Test")
    

    C# コードの書き方

    C#
    コードのコピー
    C1XLBook xb = new C1XLBook();
    xb.Sheets.Add("Test");
    
  3. 新規 XLSheetを作成します既存ワークブックの各行を新規ワークブックのXLSheetへコピーします。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Dim source As XLSheet = wb.Sheets(0)
    Dim dest As XLSheet = xb.Sheets("Test")
    Dim row As Integer, col As Integer
        For row = 0 To source.Rows.Count - 1
          For col = 0 To source.Columns.Count - 1
              dest(row, col).Value = source(row, col).Value
          Next col
        Next row
    

    C# コードの書き方

    C#
    コードのコピー
    XLSheet source = wb.Sheets[0];
    XLSheet dest = xb.Sheets("Test");
    for (int row = 0; row <= source.Rows.Count - 1; row++)
    {
       for (int col = 0; col <= source.Columns.Count - 1; col++)
       {
           dest[row, col].Value = source[row, col].Value;
       }
    }
    
  4. ワークブックを保存し、開きます。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    xb.Save("C:\test2.xls")
    System.Diagnostics.Process.Start("C:\test2.xls")
    

    C# コードの書き方

    C#
    コードのコピー
    xb.Save(@"c:\test2.xls");
    System.Diagnostics.Process.Start(@"C:\test2.xls");
    
    

 Test という名のシートが2枚目に追加され、既存ワークブックの1枚目のシートの内容がコピーされます。