none
C# VSTO: Hyperlink zwischen zwei Excel-Zellen RRS feed

  • Frage

  • Hallo zusammen,

    ich versuche mit folgendem Code einen Hyperlink zwischen zwei Excel-Zellen zu erstellen.

    using IExcel = Microsoft.Office.Interop.Excel;
    
    private void button1_Click(object sender, RibbonControlEventArgs e)
    {
                IExcel.Workbook activeWorkbook = (IExcel.Workbook)Globals.ThisAddIn.Application.ActiveWorkbook;
    
                IExcel.Worksheet sheet1 = (IExcel.Worksheet)Globals.ThisAddIn.Application.ActiveWorkbook.Sheets[1];
                IExcel.Worksheet sheet2 = (IExcel.Worksheet)Globals.ThisAddIn.Application.ActiveWorkbook.Sheets[2];
    
                IExcel.Range range1 = sheet1.Cells[1, 1];
                IExcel.Range range2 = sheet2.Cells[1, 1];
    
                sheet1.Hyperlinks.Add(range1, string.Empty, range2, Type.Missing, Type.Missing);
    }

    In der letzten Zeile wird die ArgumentException (value does not fall within the expected range) geworfen. Ein Link auf eine Website, wie beispielsweise
    sheet1.Hyperlinks.Add(range1, "http://www.microsoft.de", Type.Missing, Type.Missing, Type.Missing);
    funktioniert hingegen ohne Probleme. Weiß jemand wo der Fehler liegt?



    Edit:
    Durch folgende Anweisung habe ich nun einen Weg gefunden, die beiden Zellen zu verlinken.
    sheet1.Hyperlinks.Add(range1, string.Empty, "Sheet2!A1", Type.Missing, Type.Missing);
    Dennoch stellt sich mir die Frage, ob dies nicht durch Angabe einer Range ebenfalls möglich ist.


    Vielen Dank und viele Grüße,
    Chris




    • Bearbeitet Chris Setna Donnerstag, 26. September 2013 06:59
    Mittwoch, 25. September 2013 14:44

Alle Antworten