2017-07-15 9 views
0

私は、ハイパーリンクを使用してGoogleシートのセルのテキストに挿入する:設定HTTPリンクのJava API

values.add(new CellData() 
       .setUserEnteredValue(new ExtendedValue() 
        .setStringValue(get.getTitle())).setHyperlink(get.getUrl()) 

しかし、私:私は、このJavaコードを試してみました

enter image description here

ハイパーリンクなしのテキストのみを取得します。 これをどのように実装できますか?

+0

発生したエラーは何ですか?とにかく、回避策として、このSO投稿からアイデアを試してみてください。https://stackoverflow.com/questions/527719/how-to-add-hyperlink-in-jlabel?あなたが実用的なリンクを得るまで、それを試してください。うまくいけば助けてくれます。 – Danee

+0

私は例外がありません。 –

答えて

2

あれば、このセルポイントハイパーリンクDocumentation

います。このフィールドは読み取り専用です。 (これを設定するには、userEnteredValue.formulaValueフィールドに=HYPERLINK式を使用しています。)式なし

、APIを使用すると、=HYPERLINKとしてformulaValueを設定する必要がある行動を活性化するために、ハイパーリンク情報を持つセルを作成します。

上記の考えを忘れても、ハイパーリンクはCellDataの読み込み専用フィールドです。

また、setValueオブジェクトに複数のプロパティを設定することはできません.setプロパティには1つのプロパティのみを受け入れることができます。すべてのプロパティはCellの値を指しますが、違いはセッターがセルの値の型(bool、string、エラー番号)、エラーが発生した理由は、単一セルの複数の値を設定できないためです((oneof)、フィールド値の1つがすでにに設定されています)。

ここに新しいコードがあります。この方法でハイパーリンクを追加できます。

new CellData() 
      .setUserEnteredValue(new ExtendedValue() 
        .setFormulaValue("=HYPERLINK(\"http://stackoverflow.com\",\"SO label\")")) 
+0

Javaコードスニペットを表示できますか? –

+0

私のコードを少し更新できますか? –

+0

@PeterPenzovはこのように動作するスニペットを追加しました。 –