リンクテキストを含むセルの代わりに、EPPlus を使用してセル内にハイパーリンクを書き込む方法を見つけようとしています。リンクとして認識され、クリックできるようにする必要があります。
どんな助けでも大歓迎です。
これは別の方法です:
var cell = sheet.Cells["A1"];
cell.Hyperlink = new Uri("http://www.google.com");
cell.Value = "Click me!";
私はテストしました。それは正常に動作します。
それにはいくつかの方法があります。
URI を使用するには、人間が読める名前を設定します。
var cell = sheet.Cells["A1"]; cell.Hyperlink = new Uri("https://www.google.com"); cell.Value = "クリックしてください!";
ExcelHyperLink を使用し、オブジェクト初期化子を使用して人間が判読できる名前を設定するには:
var cell = sheet.Cells["A1"]; cell.Hyperlink = new ExcelHyperLink("https://www.google.com") { Display = "クリックしてください!" };
=Hyperlink() 式を使用するには:
var cell = sheet.Cells["A1"]; cell.Formula = string.Format("HYPERLINK({0},{1})", "https://www.google.com", "Click me!"); cell.Calculate();
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