标题:VB.NET 如何调用EXCEL2003内部的函数,来确认某列的最后一行位置
只看楼主
xinya123
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-12-4
 问题点数:0 回复次数:2 
VB.NET 如何调用EXCEL2003内部的函数,来确认某列的最后一行位置
RT
以前我使用vb6.0时,只要使用P=[A65536].End(xlUp).Row就可以得到A列最后一行的位置,
可是现在使用,在使用同样的语句时就是错误的:
程序代码:
        xlapp = CreateObject("Excel.Application")
        xlapp.Visible = False
        xlbook = xlapp.Workbooks.Open(Application.StartupPath() & "\app\data.xls")
        xlsheet = xlbook.Worksheets("LIST")
        p = xlapp.Evaluate("[A65536].End(xlUp).Row")
        MsgBox(p)
我已经在最前面添加了
Imports Microsoft.Office.Interop
为什么运行结果得到的P是“-2146826273”呢?

请各位大侠帮忙!

搜索更多相关主题的帖子: NET 函数 位置 
2010-12-04 14:09
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
得分:0 
程序代码:
Imports Microsoft.Office.Interop
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim xlapp As New Excel.Application
        Dim xlbook As Excel.Workbook = xlapp.Workbooks.Open(Application.StartupPath() & "\app\data.xls")
        Dim xlsheet As Excel.Worksheet = xlbook.Worksheets("LIST")
        Dim p As string = xlsheet.Range("A65536").End(Excel.XlDirection.xlUp).Row.ToString()  ' 注意,非 End(xlUp).Row
        MsgBox(p)
        xlapp.Quit()

    End Sub
End Class
记得我好像回答过这样的问题

===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2010-12-04 15:43
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
得分:0 
xinya123

等 级:新手上路
帖 子:1
专家分:0
注 册:2010-12-4
结帖率:0/0

此ID至今就这一个贴子

===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2010-12-25 15:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-327876-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.045422 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved