こんにちは。プログラミング歴数週間の初心者です。
Visual Studio 2015で開発しています。
以下のように、SQLで持ってきたデータテーブルを行のデータがなくなるまで繰り返す形で、
エクセルに表として出力したあと、
最終行にa,b,c,d(金額のデータが入っています)それぞれの合計値を書きたいのですが、どのような処理をすればA,B,C,Dの値を任意のセルに書き込めるのかわかりません。
御教授願いますm(_ _)m
イメージ
|列1|列2|列3||列4|列5|列6||a|b|c||d|
|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|
|あ|い|う|え|お|か|a|b|c|d|
|あ|い|う|え|お|か|a|b|c|d|
| | | | | | |A|B|C|D|
: ↑合計
Dim Row As Integer = 0 Dim A As Integer = 0 'A合計 Dim B As Integer = 0 'B合計 Dim C As Integer = 0 'C合計 Dim D As Integer = 0 'D合計 xls.BookOpen(Bag.ExcelBookPath & "Excel.xlsx") xls.NewArray(r.Rows.Count, 10) = "明細" For Each dr As DataRow In r.Rows xls.RangeField("明細", Row, 0) = dr("列1") xls.RangeField("明細", Row, 1) = dr("列2") xls.RangeField("明細", Row, 2) = dr("列3") xls.RangeField("明細", Row, 3) = dr("列4") xls.RangeField("明細", Row, 4) = dr("列5") xls.RangeField("明細", Row, 5) = dr("列6") xls.RangeField("明細", Row, 6) = dr("a") xls.RangeField("明細", Row, 7) = dr("b") xls.RangeField("明細", Row, 8) = dr("c") xls.RangeField("明細", Row, 9) = dr("d") A += dr("a") '足していく処理 B += dr("b") C += dr("c") D += dr("d") Row += 1 xls.RangeField("明細", ?, 6) = A xls.RangeField("明細", ?, 7) = B xls.RangeField("明細", ?, 8) = C xls.RangeField("明細", ?, 9) = D Next xls.RangeFieldGo("明細", "A2")
Row+1のあとに挿入したコードの?に0を入れると、エクセルの2行目(1行目には項目名が書いてあります)に合計値が入ったので、?の部分を工夫すれば解決するのかと考えましたがよくわかりませんでした。
回答2件
あなたの回答
tips
プレビュー