データの書き込み処理
C1XLBookコンポーネントは、ワークシートへのデータの書き込みもできます。このプログラムでは、TextBoxコントロールに入力されたデータを、ワークシートSheet1にあるデータの最後尾に追加するようにします。そのため、まず最初に「読み込み」ボタンを使ってワークシートSheet1のデータを読み込んでおく必要があります。
まず、ワークシートSheet1への参照を作成します。そして、データを書き込むセルを参照し、そのValueプロパティにTextBoxコントロールのTextプロパティの値を代入します。
なお、このプログラムでは、データの最後尾のセルの行番号は、変数iの値を使用しています。この変数には、データを読み込んだ時の最後の行番号の次の番号が格納されているので、これを使います。
もし、この変数iの値が0であれば、データの読み込みが行われていませんから、メッセージを表示して処理を終了します。
すでにデータが読み込まれていれば、TextBoxコントロールに入力されているデータをワークシートに書き込み、Saveメソッドを使ってブックを上書き保存します。
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
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で表示したりグラフなどでさらにデータを加工できますので、データファイルの汎用性がぐっと高くなるのではないでしょうか。