vb.net 导出固定格式EXCEL

客户要求,导出固定格式EXCEL,牵涉到office.excel类的相关操作,记录下:

vb.net 导出固定格式EXCEL_第1张图片

1)引用Microsoft.Office.Interop.Excel和Microsoft.Office.Interop

2)判断需要提取的列内容各行值是否一致,这里form应用文件和WPF里的DataGridView控件不一样,WPF里是DataGrid控件。

DataGridView控件中,读取单元格内容  DGV.Rows(i).Cells(j).Value.ToString

DataGrid控件中,读取单元格内容 

Dim DT1 As DataRowView = DGV.Items(i)

DT1.Row.ItemArray(j).ToString

3)'写固定表头
            Dim range As Excel.Range = appsheet.Range("A1", "J1")
            range.Merge()
            appsheet.Cells(1, 1) = "XXXXXXXX"
            appsheet.Cells(1, 1).font.size = 25
            appsheet.Cells(1, 1).HorizontalAlignment = 3   '居中  4居右

4)画线

Dim border As Excel.Border = appsheet.Range("C2", "H2").Borders(Excel.XlBordersIndex.xlEdgeTop)
            border.LineStyle = Excel.XlLineStyle.xlContinuous
            border.Weight = Excel.XlBorderWeight.xlThick

5)合并提取项目写位置

appsheet.Range("A3", "B3").Merge()
            appsheet.Range("C3", "D3").Merge()
            appsheet.Range("E3", "F3").Merge()
            appsheet.Range("G3", "H3").Merge()
            appsheet.Range("I3", "J3").Merge()

6)写提取项目内容(datagridview控件)

            appsheet.Cells(3, 1) = Format(DGV.Rows(1).Cells(15).Value, "yyyy年MM月dd日")
            appsheet.Cells(3, 3) = "炉型" + " " + DGV.Rows(1).Cells(2).Value.ToString
            appsheet.Cells(3, 5) = "炉次" + " " + DGV.Rows(1).Cells(4).Value.ToString
            appsheet.Cells(3, 7) = "规格" + " " + "Ø" + DGV.Rows(1).Cells(6).Value.ToString.Trim + DGV.Rows(1).Cells(5).Value.ToString.Trim + DGV.Rows(1).Cells(7).Value.ToString.Trim
            appsheet.Cells(3, 9) = "编号" + "         "

 7)定义行高 列宽

            appsheet.Rows(2).rowHeight = 0.3 / 0.035
            appsheet.Rows(3).rowHeight = 0.6 / 0.035

            appsheet.Columns(1).columnwidth = 10
            appsheet.Columns(9).columnwidth = 14

8)窗口内容增加网格线

appsheet.Range(appsheet.Cells(4, 1), appsheet.Cells(DGV.RowCount + 4, 10)).Borders.LineStyle = Excel.XlLineStyle.xlContinuous

其他就是写表格内容了,主要记录EXCEL格式相关操作

你可能感兴趣的:(vb.net,excel,.net,开发语言)