在Excel中用C语言编写带双引号的公式带公式#
问题描述:
我想在Excel单元格中编写公式。 我设法写简单的公式,但我用下面的公式的一个问题:在Excel中用C语言编写带双引号的公式带公式#
=IF(OR(ISBLANK(I20631);ISBLANK(F20631));"";I20631=F20631)
在我的C#PROGRAMM它试图这样:
ExcelWorksheet.Cells[row, column] = "=IF(OR(ISBLANK(I" + row +");ISBLANK(F" + row +"));\"\";I"+ row +"=F" + row +")";
我因为\的exeption” “(我这么认为)
当我在excel单元格中写入时,Excel不能插入”作为双引号符号“ 而且我不能用Visual Studio编写字符串而不写入\“
是否有可能有另一种方式来使用\”?双引号字符删除字符串? (我阿洛斯尝试"
但它仍然是解释为\”)
谢谢你在前进,
托马斯
答
是,把一个@的字符串之前,这将‘禁用’转义字符。\
已启用的唯一事情是使用两个双引号,这将转化为一个双引号
例:
"I said: \"Hello!\""
等于:
@"I said: ""Hello!"""
等于:
"I said: " + (char)34 + "Hello!" + (char)34
打印时将producte:
I said: "Hello!"
注意:无论你有多格式化字符串,调试器将始终将您的字符串显示为第一个字符串,其中\
。这并不意味着这些反斜杠是字符串的一部分,它只是一种显示它们的方式。
你有什么异常?我认为'+ row'更有可能给你一个异常,而不是'\''。尝试用'+ row.ToString()'替换'+ row'。 – 2013-04-29 12:07:27
我将行改为row.tostring()和(char)34但我仍然有以下异常:System.Runtime.InteropServices.COMException未处理消息=异常来自HRESULT:0x800A03EC Source =“”ErrorCode = -2146827284 StackTrace:在System.RuntimeType.ForwardCallToInvokeMember(字符串memberName,BindingFlags标志,Object target,Int32 [] aWrapperTypes,MessageData&msgData) - – user2310493 2013-04-29 12:27:56