找回密码
 立即注册

QQ登录

只需一步,快速开始

taxsoft

中级会员

76

主题

246

帖子

608

积分

中级会员

积分
608

活字格认证微信认证勋章元老葡萄

taxsoft
中级会员   /  发表于:2012-7-14 10:53  /   查看:5765  /  回复:3
其实是变通一下,呵呵,但是很有用!

    Public Function onCalcFormular(ByVal formularStr As String) As String

        Dim tmpSheet As New FarPoint.Win.Spread.SheetView

        If formularStr.Trim <> "" Then
            tmpSheet.Cells(0, 0).Formula = formularStr
            Return IIf(tmpSheet.Cells(0, 0).Text = "#NAME?", "", tmpSheet.Cells(0, 0).Text)
        Else
            Return ""
        End If

    End Function

3 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-16 09:51:00
沙发
很好的变通方法,非常棒,谢谢分享!

稍后我们会将该贴移到【知识库与精华区中】。
回复 使用道具 举报
xiwu
中级会员   /  发表于:2012-8-3 22:34:00
板凳
能否改成C#的?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-8-16 11:23:00
地板
回复 3楼xiwu的帖子
  1. [code]    public string onCalcFormular(string formularStr)
  2.     {
  3.         FarPoint.Win.Spread.SheetView tmpSheet = new FarPoint.Win.Spread.SheetView();

  4.         if (!string.IsNullOrEmpty(formularStr.Trim()))
  5.         {
  6.             tmpSheet.Cells[0, 0].Formula = formularStr;
  7.             return (tmpSheet.Cells[0, 0].Text == &quot;#NAME?&quot; ? &quot;&quot; : tmpSheet.Cells[0, 0].Text);
  8.         }
  9.         else
  10.         {
  11.             return &quot;&quot;;
  12.         }
  13.     }
复制代码
[/code]
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部