ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > VSTO > 如何在VSTO中定义并使用工作表函数WorksheetFunction?

如何在VSTO中定义并使用工作表函数WorksheetFunction?

作者:绿色风 分类: 时间:2022-08-18 浏览:96
楼主
wise
Q:如何在VSTO中定义并使用工作表函数WorksheetFunction?
A:首先定义一个工作表函数,然后判断该定义值是否为空,而不为空则调用工作表函数。
其代码如下
  1. Public Class Sheet1

  2.     Private Sub Sheet1_Startup() Handles Me.Startup
  3.         Dim Wkfu As Excel.WorksheetFunction = Me.Application.WorksheetFunction
  4.         '定义wkfu为工作表函数
  5.         If Wkfu IsNot Nothing Then
  6.             '如果wkfu不为空
  7.             Dim d As Single = Wkfu.Average(4.3, 8.9)
  8.             '定义d为single类型,并且赋予4.3及8.9的均值给d
  9.             MsgBox(d.ToString())
  10.             '显示d的值
  11.         End If
  12.     End Sub

  13. End Class
2楼
fsydw
老师你好!

下面是段VBA代码:

    Private Sub Button1_Click()
        Dim FistRow As Integer '字典用的数组,在工作表中、第一行的行号。
        Dim EndRow As Integer '字典用的数组,在工作表中、最后一行的行号。
        Dim XSheet As String '工作表名称
        Dim Arr, Brr '数组
        Dim Dic As Object, k As Integer, Item
        XSheet = "流水帐"
        With Sheets(XSheet)
            Arr = .Range("a1:d100") '把工作表《流水帐》的部分单元格区域数据,赋值给数组Arr
            Dic = CreateObject("Scripting.Dictionary")
            For k = 1 To UBound(Arr)
                If IsNumeric(ArrDic(k, 3)) And ArrDic(k, 3) > 0 Then '判断Arr(k, 3)是数值且大于零
                    If Not Dic.Exists(ArrDic(k, 1) & "_" & ArrDic(k, 2)) Then
                        Dic(ArrDic(k, 1) & "_" & ArrDic(k, 2)) = Dic(ArrDic(k, 1) & "_" & ArrDic(k, 2)) + ArrDic(k, 3)
                    End If
                End If
            Next k
            '=========下面将字典内容写入数组
            ReDim Brr(1 To Dic.Count, 1 To 3)
            k = 0
            For Each Item In Dic.Keys
                k = k + 1
                BrrDwxhl(k, 1) = Split(Item, "_")(0)
                BrrDwxhl(k, 2) = Split(Item, "_")(1)
                BrrDwxhl(k, 3) = Application.Index(Dic(Item), 1) '
            Next
    End Sub

问题是:将这段VBA代码移植到VSTO中,倒数第3行的INDEX,如何更改?

程序提示错误信息是:“INDEX”不是“SYSTEM.WINDOWS.FORMS.APPLICATION”的成员。

多谢**!

3楼
纵鹤擒龙水中月
谢谢分享

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap