Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Excelブックを読み書きする.NET アプリケーションを作る

.NETコンポーネントを使ったExcelのブックを操作するアプリケーションの作成

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2009/01/28 14:00
目次

データの書き込み処理

 C1XLBookコンポーネントは、ワークシートへのデータの書き込みもできます。このプログラムでは、TextBoxコントロールに入力されたデータを、ワークシートSheet1にあるデータの最後尾に追加するようにします。そのため、まず最初に「読み込み」ボタンを使ってワークシートSheet1のデータを読み込んでおく必要があります。

 まず、ワークシートSheet1への参照を作成します。そして、データを書き込むセルを参照し、そのValueプロパティにTextBoxコントロールのTextプロパティの値を代入します。

 なお、このプログラムでは、データの最後尾のセルの行番号は、変数iの値を使用しています。この変数には、データを読み込んだ時の最後の行番号の次の番号が格納されているので、これを使います。

 もし、この変数iの値が0であれば、データの読み込みが行われていませんから、メッセージを表示して処理を終了します。

すでにデータが読み込まれていれば、TextBoxコントロールに入力されているデータをワークシートに書き込み、Saveメソッドを使ってブックを上書き保存します。

Visual Basic
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
	Dim sheet1 As XLSheet = wb.Sheets(0)
    
    If i = 0 Then
        MessageBox.Show("データを読み込んでください")
        Exit Sub
    End If
    
    sheet1(i, 0).Value = Me.TextBox1.Text
    wb.Save("j:\data\winelist.xls")
End Sub
C#
private void button2_Click(object sender, EventArgs e)
{
    XLSheet sheet1 = wb.Sheets[0];

	if(i == 0){
        MessageBox.Show("データを読み込んでください");
        return;
    }
    
    sheet1[i, 0].Value = textBox1.Text;
    wb.Save("j:/data/winelist.xls");
}

 以上で、できあがりです。データを書き込んだら、もう一度「読み込み」ボタンを押すと、データが追加されていることを把握できます。

テキストボックスに入力して「書き込み」ボタンを押すとデータをセルに書き込む
テキストボックスに入力して「書き込み」ボタンを押すとデータをセルに書き込む
「読み込み」ボタンを押してデータを読み込みなおすと追加したデータが表示される
「読み込み」ボタンを押してデータを読み込みなおすと追加したデータが表示される

まとめ

 C1XLBookコンポーネントは、VBAを使うことなくコンポーネントのクラスをVisual BasicやC#の構文で操作することができますから、VBAの知識がなくてもExcelのブックを操作できます。

 プログラムのデータを、独自のファイルに保存するのではなくExcelのブック形式で保存できると、Excelで表示したりグラフなどでさらにデータを加工できますので、データファイルの汎用性がぐっと高くなるのではないでしょうか。



  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 瀬戸 遥(セト ハルカ)

    8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

バックナンバー

連載:ComponentZine(ComponentOne Studio)

もっと読む

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5