您好我有一个包含多张纸的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无效。
答案 0 :(得分:0)
错误消息显示您的超链接地址无效。
尝试将其生成为:
string strp="#'" + i + " of " +nfaultCount + "'!" + strRange1;
// Sample result: "#'4 of 5'!A3
而不是
string strp="#" + i + " of " +nfaultCount + strRange1;
// Sample result: #4 of 5A3
以上假设目标工作表名称为“4 of 5”。
注意你需要一个!工作表名称和范围名称之间的字符。 如果工作表名称包含一个或多个空格,则还需要将工作表名称括在单引号中。