Googleドライブのフォルダにある画像をGoogleスプレッドシートのスプレッドシートに挿入/リンクするにはどうすればよいですか?
Image()関数があります。次のようなものを使用することを想像します。
image("googledrive://somefodleringoogledrivewithmypics/pic_1.png")
どうやって?
更新: Picasaに画像をアップロードすることで、各画像のURLを取得して使用できると指摘する人もいました。できます。この欠点は、すべての画像のすべてのURLをコピーする必要があることです。それを別のシートに入れてから、VLOOKUPを使用して、インデックスごとに各画像URLを取得します。もちろん動作しますが、もちろん画像がたくさんある場合、URLコピー部分は非常に面倒です。より良いソリューションが必要です。
現時点では、Googleドライブに保存されているファイルをウェブサイトリソースとして使用することは可能ですが、公式にはサポートされていないため、2016年8月31日以降の寿命を持つウェブサイトおよび spreadsheets .
関連する質問に対する his answer でAE Iが言及したように、https://docs.google.com/uc?export=view&id=FILE_ID
の使用は文書化されておらず、事前の公式通知なしにいつでも動作を停止する可能性がありますが、 、2019)それはまだ動作します。
Googleドライブファイルをウェブサイトコンテンツとして公開する手順は ウェブサイトコンテンツの公開-GoogleドライブREST API にありますが、 Googleドライブでのウェブホスティングサポートの廃止-Google Apps開発者ブログ
2015年8月31日から、ユーザーとデベロッパー向けのGoogleドライブでのウェブホスティングは廃止されます。この機能は、2016年8月31日までgoogledrive.com/Host/[doc id]によるコンテンツの提供を停止するまで1年間使用できます。
Googleドライブの画像の共有リンクを使用する2行のスクリプトを作成しました。
許可のために実行をクリックしてください
function DRIVE_IMAGE(link){
prefix_url = "https://docs.google.com/uc?export=download&";
link.replace("open?", "uc?export=download&");
}
スクリプトの使用:
数式を入力してください
=IMAGE(DRIVE_IMAGE("COPIED_LINK"))
それはそれを行う必要があります。出力の実例 ここ 。
/* modified from @hubgit and http://stackoverflow.com/questions/30328636/google-apps-script-count-files-in-folder
for this stackexchange question http://webapps.stackexchange.com/questions/86081/insert-image-from-google-drive-into-google-sheets by @twoodwar
*/
function listFilesInFolder(folderName) {
var sheet = SpreadsheetApp.getActiveSheet();
sheet.appendRow(["Name", "Date", "Size", "URL", "Download", "Description", "Image"]);
//change the folder ID below to reflect your folder's ID (look in the URL when you're in your folder)
var folder = DriveApp.getFolderById("THIS_SHOULD_BE_YOUR_FOLDER_ID");
var contents = folder.getFiles();
var cnt = 0;
var file;
while (contents.hasNext()) {
var file = contents.next();
cnt++;
data = [
file.getName(),
file.getDateCreated(),
file.getSize(),
file.getUrl(),
"https://docs.google.com/uc?export=download&confirm=no_antivirus&id=" + file.getId(),
file.getDescription(),
"=image(\"https://docs.google.com/uc?export=download&id=" + file.getId() +"\")",
];
sheet.appendRow(data);
};
};
これを処理する最良かつ簡単な方法は、代替式を使用し、ここに2つの列があることです。
Column A5: just put google drive image shareable link e.g.
"https://drive.google.com/open?id=1CfUnvGGdt96irA419HnU0BvRafD4F_os"
Column B5: use the combination of two formula image and substitute like this:
=image(substitute(A5,"open?id","uc?export=download&id"))
これにより、Google画像の間接画像ファイルが直接リンクに変換され、必要な画像結果が得られます。
スクリーンショット:
これを行うには、Google DrawingのURLにリンクします。手順は次のとおりです。
File -> Publish to web -> As Link
、公開を開始=image("URL you copied")
データを複製するため、実際の画像にリンクするのではなく、画像のコピーを含むGoogle図面にリンクします。誰でもそのリンクにアクセスして、サポートされている形式(JPEG、PNG、SVG、またはPDF)でダウンロードできます。
(Zeeshan)から上記の回答を取得し、1つのセルに結合しました。
これをセルに入力します。
=image(substitute("https://drive.google.com/open?id=1cmtBYSbobv3FYpKKBCPvS","open?id","uc?export=download&id"))
"https://drive.google.com/open?id=1cmtBYSbobv3FYpKKBCPvS"
を「共有可能なリンク」に置き換えます