Trích xuất URL từ liên kết trong Google Sheet

Khi bạn thường xuyên làm việc với Google Sheet có các ô dữ liệu chứa liên kết của website. Nhưng nó được đặt ẩn thông qua các archor text (text hiển thị). Mà Google Sheet lại không có hàm nào hỗ trợ lấy các liên kết đó ra, do vậy chúng ta cần phải sử dụng script sau để trích xuất các url này ra khỏi các ô dữ liệu.

Tách URL trong google sheet
Làm sao để lấy URL liên kết trong Google sheet tự động?

Để lấy link trong cell thì đơn giản thôi, bạn chỉ cần hover chuột qua ô (Cell) chứa liên kết thì sẽ hiện ra và bạn dễ dàng copy được nó. Nhưng nếu có hàng chục thậm chí hàng ngàn cell liên kết thì phải làm thế nào?

Tất nhiên chúng ta không thể làm thủ công được từ ô được, mà phải làm một cách tự động. Dưới đây, IT Của Bạn sẽ hướng dẫn bạn làm nó một cách nhanh chóng.

Script tách URL từ cell có liên kết

Dưới dây là Script bạn có thể sử dụng để tách URL trong Google sheet. Để áp dụng, bạn mở trình Chỉnh sửa tập lệnh (Tools – Công cụ). Sau đó dán toàn bộ mã bên dưới vào và lưu lại là xong.

/** 
 * Returns the URL of a hyperlinked cell, if it's entered with control + k. 
 * Author: @Frederico Schardong based on https://support.google.com/docs/thread/28558721?hl=en&msgid=28927581 and https://github.com/andrebradshaw/utilities/blob/master/google_apps/convertHiddenLinks.gs 
 * Supports ranges
 */
function linkURL(reference) {
  var sheet = SpreadsheetApp.getActiveSheet();
  var formula = SpreadsheetApp.getActiveRange().getFormula();
  var args = formula.match(/=\w+\((.*)\)/i);
  try {
    var range = sheet.getRange(args[1]);
  }
  catch(e) {
    throw new Error(args[1] + ' is not a valid range');
  }

  var formulas = range.getRichTextValues();
  var output = [];
  for (var i = 0; i < formulas.length; i++) {
    var row = [];
    for (var j = 0; j < formulas[0].length; j++) {
      row.push(formulas[i][j].getLinkUrl());
    }
    output.push(row);
  }
  return output
}

Cách sửu dụng Script

Sau khi đã copy và dán tập lệnh trên vào tài liệu, bạn sử dụng lệnh sau như một hàm (fomula) bình thường.

linkURL(cell_can_tach)
Script Tách URL trong google sheet

VD: linkURL(A2). Trong đó, A2 là ô chứa liên kết URL ẩn

Để lấy hàng loạt, bạn chỉ cần kéo chuột như những hàm tính khác trong Google Sheet mà thôi.

Quá đơn giản phải không?

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments