我将数据从DataGridView导出到Word表格。
E.g:
Amount | Number | Name | Unit price | Sum
3 | 0815 | test | 1,50 | 4,50
这很好用。 但是如果我有这么多的位置会发生分页,我会自动插入(在页面的末尾)一个额外的行,其中包含该页面上所有位置的总和。
我该怎么做?
以下是我实际导出数据的方法
for (int r = 0; r < dg.Rows.Count; r++)
{
oTable.Cell(j, 1).Range.Text = iPos.ToString();
oTable.Cell(j, 2).Range.Text = Number.ToString();
oTable.Cell(j, 3).Range.Text = Name.ToString();
oTable.Cell(j, 4).Range.Text = UnitPrice.ToString();
oTable.Cell(j, 5).Range.Text = Sum.ToString();
j += 3;
iPos++;
}
答案 0 :(得分:0)
此代码将在每10次后计算小计并插入它们:
var subTotal = 0;
for (int r = 0; r < dg.Rows.Count; r++)
{
oTable.Cell(j, 1).Range.Text = iPos.ToString();
oTable.Cell(j, 2).Range.Text = Number.ToString();
oTable.Cell(j, 3).Range.Text = Name.ToString();
oTable.Cell(j, 4).Range.Text = UnitPrice.ToString();
oTable.Cell(j, 5).Range.Text = Sum.ToString();
j += 3;
iPos++;
//Every 10th row is a subtotal (because you do 3 row jumps j+=3)
subtotal+=Sum;
if ((j % 3 * 10) == 0) {
var currentRow = oTable.Rows[j];
//Insert after this row
var subtotalRow = oTable.Rows.Add(currentRow)
subtotalRow.Cells[5].Range.Text = subtotal.ToString();
subtotal = 0;
}
}