工具: 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列以获得要插入的第一个值。我尝试了offset和不同的读取rngDet的方法,但没有成功。我也尝试过rngDet.Activate()读取活动单元格,但它的工作方式与微软不同。
感谢你能提供的任何帮助。
发布于 2012-11-15 09:41:08
提姆,谢谢你的问题。第一次问,所以我可能不是很清楚。今天我自己确实找到了答案。我有一组手机需要上传。问题是,它们将在页面上上下移动,这取决于在上面的部分中输入了多少行。我意识到我确实知道它将位于哪个列中,所以我执行了以下操作:
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行,这就是我的值象限。
我想我会分享,以防任何人有同样的问题。
https://stackoverflow.com/questions/13367180
复制相似问题