2017-04-07 13 views
0

ハイパーリンクやセルからの数式を取得する方法はありますか?GoogleシートAPIにはgetFormulaR1C1がありません。PHPライブラリのCellEntry

基本的に、ワークシートにハイパーリンク式(= HYPERLINK( 'http://blabla.com'、 'link1'))を持つセルがあります。このセルの価値を得ようとすると、それは私に目に見えるコンテンツ( 'link1')のみを与えます。表示可能なコンテンツの代わりに式を使用する方法はありますか?

enter image description here

+0

あなたはどのようなAPI呼び出しを使用しています? –

+0

は私の依存関係です: "asimlqt/php-google-spreadsheet-client": "2. *"、 "google/apiclient": "1. *" –

答えて

0

あります。このSO threadで述べたようにAppsスクリプト(ただし、あなたがPHPを使用しているので..)を使用してこれを行う方法のようだ:

function getURL() { 
    var range = SpreadsheetApp.getActiveSheet().getActiveCell(); 

    //logs - Google 
    Logger.log(range.getValue()); 

    //logs - =HYPERLINK("http://www.google.com", "Google") 
    Logger.log(range.getFormulaR1C1()); 

    //simple regex to get first quoted string 
    var url = /"(.*?)"/.exec(range.getFormulaR1C1())[1]; 

    //logs - http://www.google.com 
    Logger.log(url); 
} 
+1

これはSheets V4 APIでうまくサポートされるはずです。 valueRenderOption = FORMULAを要求して、あなたが記述したのと同じ方法で結果を解析してください。 –

+1

また、spreadsheets.getを使用してCellDataから値を取得することもできます。「ハイパーリンク」フィールドと「実効値」の値があります。 1つはURLを、もう1つは表示文字列を持つ必要があります。 –

+0

感謝のサム、あなたは答えとして投稿することができます – noogui

関連する問題