Convert a Google Drive image URL to a direct link via the Google Sheets connector
You are using Google Drive to host your images and you want to use the Google Sheets connector to import your content?
A manipulation is necessary to allow you to automatically generate usable links for your images, so that they are added correctly in Wemap Pro.
Example: if you want to import specific images for your points on Wemap Pro and these images are stored on Google Drive, each of them must have a specific link to be used.
đ§Ž Option 1: Use a formula in Google Sheets
You can automatically transform a Google Drive link into a direct displayable link via a formula in your file.
Example:
- Classic Google Drive link:
https://drive.google.com/file/d/IDIMAGE/view?usp=sharing
- Direct link:
https://drive.google.com/uc?export=view&id=IDIMAGE
đ§° Procedure:
In Google Sheets:
- Add a new empty column next to the one containing your Google Drive links
Example: if your links are in column C, create your new column D.
- Paste the following formula in the first empty cell of the new column
Example: in cell D2, D1 being the one containing the column label.
=IF(REGEXMATCH(C2, "drive.google.com\/file\/d\/"), "https://drive.google.com/uc?export=view&id=" & REGEXEXTRACT(C2, "[-\w]{25,}"), "")
đ Note:
Depending on the format and content of your file, replace "C2" with the cell number that contains your Google Drive link.
Example: if your links are in column E, you will need to enter "E2".
- Drag the cell down to apply the formula to all rows.
- Use this new column, with the direct links, for display in your tools (map, database...).
đģ Option 2: Automate with a script
If you prefer a method without formulas (simpler in the long term), you can add a script to your Google Sheets file.
This will automatically detect any new link pasted in a column and generate a direct link in the relevant column.
đ§° Procedure:
In Google Sheets:
- Click on "Extensions" > "Apps Script".
- Delete all existing content and paste the following script:
function onEdit(e) {
const sheet = e.source.getActiveSheet();
const range = e.range;
const sourceColumn = 3;
const targetColumn = 4;
if (range.getColumn() === sourceColumn && range.getRow() > 1) {
const driveUrl = range.getValue();
const outputCell = sheet.getRange(range.getRow(), targetColumn);
const regex = /https:\/\/drive\.google\.com\/file\/d\/([-\w]{25,})/;
const match = driveUrl.match(regex);
if (match) {
const fileId = match[1];
const directUrl = `https://drive.google.com/uc?export=view&id=${fileId}`;
outputCell.setValue(directUrl);
} else {
outputCell.setValue("");
}
}
}
âšī¸ Note:
- Adjust the column numbers according to your needs:
- sourceColumn = 3 corresponds to column C (column containing the Google Drive link)
- targetColumn = 4 corresponds to column D (column containing the direct link)
- The line outputCell.setValue(""); appears empty if the link is not valid.
- Click on "Save" and give a name to the project.
Example: "ConversionLienDrive".
âĄī¸ Each time a Google Drive link is added to the source column, a direct link is automatically generated in the adjacent column.