51

リンクテキストを含むセルの代わりに、EPPlus を使用してセル内にハイパーリンクを書き込む方法を見つけようとしています。リンクとして認識され、クリックできるようにする必要があります。

どんな助けでも大歓迎です。

4

6 に答える 6

107

これは別の方法です:

var cell = sheet.Cells["A1"];
cell.Hyperlink = new Uri("http://www.google.com");
cell.Value = "Click me!";

私はテストしました。それは正常に動作します。

于 2012-11-06T04:10:30.460 に答える
24

それにはいくつかの方法があります。

  1. URI を使用するには、人間が読める名前を設定します。

    var cell = sheet.Cells["A1"]; cell.Hyperlink = new Uri("https://www.google.com"); cell.Value = "クリックしてください!";

  2. ExcelHyperLink を使用し、オブジェクト初期化子を使用して人間が判読できる名前を設定するには:

    var cell = sheet.Cells["A1"]; cell.Hyperlink = new ExcelHyperLink("https://www.google.com") { Display = "クリックしてください!" };

  3. =Hyperlink() 式を使用するには:

    var cell = sheet.Cells["A1"]; cell.Formula = string.Format("HYPERLINK({0},{1})", "https://www.google.com", "Click me!"); cell.Calculate();

于 2015-05-28T05:07:45.230 に答える
1

EPPlusはわかりませんが、VBAでは(C#でも同じ原則を使用すると思います)、次のコードを使用します。

Sub Test()

    ' place value into cell
    ActiveSheet.[A1] = 13

    ' create link and set its range property
    ActiveSheet.Hyperlinks.Add ActiveSheet.[A1], "http://www.google.at"

    ' use cell in a calculation
    ActiveSheet.[A2].Formula = "=A1+2"

End Sub

ハイパーリンクは範囲プロパティを持つオブジェクトであるため、セルの値は上書きによって変更できますが、リンクは残ります。マウスの長いクリックでセルを編集します

これがお役に立てば幸いです-幸運のMikeD

于 2011-10-04T13:59:59.900 に答える