【发布时间】:2011-06-12 00:22:09
【问题描述】:
我在使用 VSTO 的 Evaluate 函数时遇到问题,该函数基本上是在 Excel 中转换公式并返回值。
我正在苦苦挣扎的是,如果我传递一个带有 " 字符的公式,C# 会自动在它旁边添加 \,我确实理解它为什么存在,但它导致函数失败,因为 \ 字符试图获得评估也可以,但是如果我使用字符串 Replace 函数来删除 \ 字符,它就可以工作。
但是,我不能只删除 \ 字符,如果用户在单元格上键入 \ 字符怎么办?无论如何,我都会删除它并导致我的解决方案给出错误的答案。
谁能帮我解决这个问题?
我尝试过使用@符号,也不起作用。
任何帮助将不胜感激。
【问题讨论】:
-
您可以将 \" 替换为 " 而不是 \ 替换为
吗?如果用户输入一个 \ 并且它正在转义,就像你说的那样,那不会也被转义到 \\ 吗?以下是一些转义字符msdn.microsoft.com/en-us/library/h21280bw(v=vs.80).aspx -
请贴出被调用的代码?
-
Microsoft.Office.Interop.Excel.Application xl = Globals.ThisAddIn.Application;元素 = xl.ActiveCell.Formula;字符串结果 = xl.Evaluate(element.ToString()).Value.ToString();
标签: c# excel escaping vsto formula