代码之家  ›  专栏  ›  技术社区  ›  Green goblin

excel超链接中的引用无效错误

  •  1
  • Green goblin  · 技术社区  · 12 年前

    我正在使用下面的代码将超链接添加到给定的单元格( "A1" 此处):

    Workbook workbook = _excelApp.Workbooks.Open("C:\\temp\\test1.xlsx",
            Type.Missing, Type.Missing, Type.Missing, Type.Missing,
            Type.Missing, Type.Missing, Type.Missing, Type.Missing,
            Type.Missing, Type.Missing, Type.Missing, Type.Missing,
            Type.Missing, Type.Missing);
    
    
    Worksheet worksheet = (Worksheet)workbook.Worksheets[1];
    Range rangeToHoldHyperlink = worksheet.get_Range("A1", Type.Missing);
    string hyperlinkTargetAddress = "www.bing.com";
    
    Range excelRange = worksheet.UsedRange;
    object[,] valueArray = (object[,])excelRange.get_Value(
                    XlRangeValueDataType.xlRangeValueDefault);
    
    
     worksheet.Hyperlinks.Add(
                    rangeToHoldHyperlink,
                    hyperlinkTargetAddress,
                    string.Empty,
                    string.Empty,
                    valueArray[1, 1].ToString());
    

    它添加了超链接。但是,点击它,它会说:
    Reference not valid
    将鼠标悬停在单元格文本上时,会将超链接显示为:
    excel_file_path\hyperlinkTargetAddress

    为什么要这么做?
    如何克服这一点?

    1 回复  |  直到 12 年前
        1
  •  2
  •   varocarbas    12 年前

    您可以添加不同类型的超链接。默认情况下,Excel假设您要链接硬盘驱动器中的文件(在电子表格所在的文件夹中)。要告诉Excel你想要一个网站,你必须写下完整的地址(以 http:// 位)。

    string hyperlinkTargetAddress = "http://www.bing.com";