мне нужно делать разные вещи, основываясь на которых поле (столбец) данные в.Как я могу указать правильный столбец?
For Each row As DocumentFormat.OpenXml.Spreadsheet.Row In
worksheet.Descendants(Of DocumentFormat.OpenXml.Spreadsheet.Row)
For Each cell As DocumentFormat.OpenXml.Spreadsheet.Cell In row
Select Case True
Case cell.CellReference.Value Like "C*"
'if this cell is in column C
Case cell.CellReference.Value Like "A*"
'if this cell is in column A
Case Else
End Select
Next
Next
Это прекрасно работает до тех пор, пока не существует более 26 полей в данной таблице.
Как я могу убедиться, что мой Like "A*"
не реагирует на столбец AA, AB и т. Д.?
Имейте в виду, что OpenXML SDK всегда возвращает полную ссылку на ячейку для .cellreference.value, а не только для столбца. И мне нужно указать, что я не пытаюсь опционировать выбросить любой столбец больше 26, но я стараюсь, чтобы указать конкретный столбец. Возможно, что колонка под контролем может оказаться AA или AB, в зависимости от компании, которая создала конкретный источник. Я надеялся на собственность или запретил это, как другие люди научились ссылаться на определенные столбцы в openxml.
Можете ли вы получить столбец из ячейки? – ChrisF
@ChrisF Спасибо. Насколько мне известно, единственный способ получить столбец - это «.cellreference.value», который возвращает строку. Если существует другой способ получить ссылку, возможно, в другом формате, он, похоже, не документируется в MSDN. – CWilson
Я не думал о данных, просто получая колонку в ссылке. – ChrisF