在Excel工作表中添加超链接的C#代码

嗨,我有一个包含多个工作表的Excel文件。 其中一张纸将包含其他工作表的超链接。

虽然使用下面的代码,我已经成功地添加了链接,但是当我点击链接时,它给出了错误**"Refrence not valid"**

代码片段:

 private void AddHyperLink(Workbook xlWorkBook,int nfaultCount) { Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); DateTime now = DateTime.Now; xlWorkSheet.Name = "Summary"; //name of the sheet containing hyperlink xlWorkSheet.Select(Type.Missing); //code to select the summary sheet for (int i = 1; i <= nfaultCount; i++) { int x = i + 9; string str = "Fault Code "+i + " of " + nfaultCount; string strRange1 = "A" + x; string strRange2 = "A" + x; string strRange = strRange1 + ":" + strRange2; //location of the link var Range = xlWorkSheet.get_Range(strRange); // strRange1 = "!" + strRange1; string strp="#" + i + " of " +nfaultCount + strRange1; i +" of " nfaultCount==> name of the target worksheet Range.Cells.Hyperlinks.Add(Range,strp, Type.Missing, "Fault Code Link", str); } xlWorkSheet.Columns["A:B"].AutoFit(); 

}

我已经使用了以下链接来参考http://www.experts-exchange.com/Programming/Languages/.NET/Q_27912390.html

但其给出的错误Refrence是无效的。

错误消息说你的超链接地址是无效的。

尝试生成它为:

 string strp="#'" + i + " of " +nfaultCount + "'!" + strRange1; // Sample result: "#'4 of 5'!A3 

代替

 string strp="#" + i + " of " +nfaultCount + strRange1; // Sample result: #4 of 5A3 

上面假设目标工作表名称是“4的5”。

请注意,你需要一个! 工作表名称和范围名称之间的字符。 如果包含一个或多个空格,则还需要将工作表名称括在单引号中。