(2022/11/21) この記事の手法ではうまくいかないケースについても記事にしました Google SpreadSheet: 複数のリッチテキストからURLを抽出する
スプレッドシートのセルから、文字ではなくハイパーリンクのURLを取得したい場合があります。
みなさん四苦八苦されているようです。
2の方に近いやり方なのですが、私のやり方も紹介してみようかと思います。
簡単に実現できて使い回しやすいんじゃないかなと思います。
step1
この関数をスクリプトエディタで作成します
function getLinks(value) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var range = sheet.getRange(value);
var vals = range.getRichTextValues();
var row = [];
for( var i=0; i<vals.length; i++ ){
var col = [];
for( var j=0; j<vals[i].length; j++ ){
col.push(vals[i][j].getLinkUrl());
}
row.push(col);
}
return row;
}