Перемещение столбца в датированном от первого до последнего - PullRequest
3 голосов
/ 15 октября 2011

У меня есть хранимая процедура 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)

1 Ответ

10 голосов
/ 16 октября 2011

Это изменяет позицию первого столбца на последний в DataTable:

dt.Columns(0).SetOrdinal(dt.Columns.Count - 1)

Все столбцы перед адресуемой порядковой позицией уменьшаются на один слот, чтобы освободить место для изменения положения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...