スプレッドシートのセルから、文字ではなくハイパーリンクのURLを取得したい場合があります。
みなさん四苦八苦されているようです。
1. スプレッドシートでハイパーリンクからURLを抽出する方法は結局これが一番簡単なんじゃないかな?
2. GASを使って一覧表からハイパーリンク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; }
step2
関数をセルに入力して、引数にリンクを取得したい範囲を文字列で与えます