工具:asp.net VB,SpreadsheetGear 2010
我需要从外部用户读取Excel文件,我不控制格式。有3个部分的数据。我能够在标题中阅读。挑战是身体细节可以包含无限数量的行,有时这些行是空白的。我可以确定页脚行,因为有一段文字是唯一的。因此,我可以执行以下操作:
Dim dFoot As SpreadsheetGear.IRange = worksheet.Cells("20:21").Rows
Dim rngDet As SpreadsheetGear.IRange
rngDet = dFoot.Find(what:="UNIQUE TEXT HERE",
lookIn:=SpreadsheetGear.FindLookIn.Values,
lookAt:=SpreadsheetGear.LookAt.Whole,
searchOrder:=SpreadsheetGear.SearchOrder.ByColumns,
searchDirection:=SpreadsheetGear.SearchDirection.Next,
matchCase:=False,
after:=dFoot)
不幸的是,我现在被困在这里。我无法确定单元格的位置(即V79)或如何向上移动7列和向下移动3列以获得插入的第一个值。我尝试了偏移和不同的方法来阅读rngDet
,但没有运气。我还尝试rngDet.Activate()
来读取活动单元格,但它与Microsoft不同。
感谢您提供的任何帮助。
答案 0 :(得分:0)
Dim x As Integer
Dim xFooter As Integer
Dim columnnumber As Integer = 21 'Column V
txtTest.Text = worksheet.Cells.RowCount
For x = 500 To 1 Step -1
If worksheet.Cells(x, columnnumber).Value = "TOTAL PRODUCT COST CALCULATION" Then
txtTest.Text = x
xFooter = x
Exit For
End If
Next x
我现在可以使用我的x值作为我的单元格组的左上角。我知道这些值从这里开始超过7列,向下排20行,这让我对数值产生了影响。
以为如果有人遇到同样的问题我会分享。