我有一个sql存储过程,它在我的数据表中返回一组特定的列 在将数据表导出到Excel之前,如何将第一个位置的列移动到最后一个位置(比方说)?
Dim myConn As New SqlConnection(strConnection)
Dim myCmd As New SqlCommand(strSQL, myConn)
Dim dt As DataTable = New DataTable()
Dim da As SqlDataAdapter = New SqlDataAdapter(strSQL, myConn)
da.Fill(dt)
Dim excelPackage = New OfficeOpenXml.ExcelPackage
Dim excelWorksheet = excelPackage.Workbook.Worksheets.Add("ProjectStatusReports")
excelWorksheet.Cells("A3").LoadFromDataTable(dt, True)
答案 0 :(得分:10)
这会将第一列的位置更改为DataTable
中的最后一列:
dt.Columns(0).SetOrdinal(dt.Columns.Count - 1)
SetOrdinal
)在寻址序数位置之前的列都减少了一个插槽,以便为定位的更改腾出空间。