アプリケーションで LinqToExcel を使用していますが、データを読み取るときに最終範囲を動的に設定する最良の方法がわかりません。現在、30000 などの任意の大きな値を使用していますが、これは、範囲が特定の値を超えないことが確実な場合にのみ問題ありません。
LinqToExcelを使用するときに、連続する各行のコンテンツを段階的にチェックする以外に、エンドレンジを動的に決定するより良い方法はありますか? これが私の現在の(テストされていない)ソリューションです:
Private Function GetPreviousUnquoted() As Integer
Dim MFIDColumn As String = "E:"
Dim row As Integer = 9
Dim data As Boolean = True
Dim excel = New ExcelQueryFactory(_PathAndName)
Do Until data = False
Dim unquotedQuery = From item In excel.WorksheetRange(
MFIDColumn & row, MFIDColumn & row, 1)
Select item
If unquotedQuery.FirstOrDefault.Item(0).ToString.Length > 0 Then
row += 1
data = True
Else
data = False
End If
Loop
Return row
End Function