TGViewer
Google Таблицы Google Таблицы @google_sheets · 60.2K subscribers
Post #668 11.9K
Работаем со вшитыми (богатыми 😊) в ячейки ссылками
Примеры простых скриптов

Друзья, встречалась вам ситуация, когда приходилось обработать столбец, в котором были вшитые в текст ссылки?

Такие ссылки нельзя отделить от текста с помощью формул, но можно используя скрипты, а именно метод RichTextValue.

Простой скрипт: выделяем диапазон ссылок → запускаем скрипт → получаем три столбца (текст отдельно, ссылка отдельно, формула с ссылкой и текстом):

function fromUrl() {
//определяем активный диапазон, активный лист и забираем значения
const range = SpreadsheetApp.getActiveRange();
const sheet = SpreadsheetApp.getActiveSheet();
const richText = range.getRichTextValues();

//наполняем в цикле массив: текст, ссылка, формула
const values = richText.map(g => [g[0].getText(), g[0].getLinkUrl(), `=HYPERLINK("${g[0].getText()}";"${g[0].getLinkUrl()}")`]);

//вставляем, ориентируясь на границы выделенного диапазона
sheet.getRange(range.getRow(), range.getColumn() + 1, values.length, values[0].length)
.setValues(values)
}


И обратное превращение: выделяем диапазон [текст, ссылка] → получаем вшитые в текст ссылки

function toUrl() {
//определяем активный диапазон, активный лист и забираем значения, создаём пустой массив
const range = SpreadsheetApp.getActiveRange();
const sheet = SpreadsheetApp.getActiveSheet();
const values = range.getValues();
let richText = [];

//наполняем массив в цикле, добавляя вшитые ссылки (RichTextValueBuilder)
values.forEach(g => {
richText.push([SpreadsheetApp
.newRichTextValue()
.setText(g[0])
.setLinkUrl(g[1])
.build()]);
});


//вставляем
sheet.getRange(range.getRow(), range.getColumn() + 3, values.length, 1)
.setRichTextValues(richText)

}

Таблица с кодом, в которой все работает

Код с комментариями отдельно (если сложно читать в посте)

=
📗ОГЛАВЛЕНИЕ КАНАЛА, категории | всё оглавление
🔥НАШ КУРС НА SKILLBOX: Таблицы и GAS, Excel и VBA
☺️ ДОНАТЫ: реквизиты
  • 👍 2
More from @google_sheets
  1. Oct 9, 2026Друзья, а много среди нас вайб-кодеров? Я сейчас в путешествии и впервые встретил человека…
  2. Oct 7, 2026Друзья, а есть среди нас те, кто хочет услышать про ПеревозкуГрузов и систему, которую мы…
  3. Oct 7, 2026💡13 умных шаблонов Google-Таблиц, которые сделают вашу работу легче и эффективнее. Для бу…
  4. Oct 6, 2026спасибо тебе, Марина, за классный кейс для реализации!
  5. Oct 6, 2026PS Оцените наш выводок :) У каждой собачки свой лист, свой баланс и своя история прогулок.…
  6. Oct 6, 2026Часть 2. Считаем зарплату выгульщиков и "баланс" по собачке Итак, у нас есть выгрузка из A…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →