Пример использования текстовых формул для трансформации ссылок
Сегодня покажу вам простой пример работы текстовых формул в Excel для преображения веб-ссылок GoogleDrive.
Раз уж свой блог я решил завести на платформе blogger.com, то и использование штатного GoogleDrive для хостинга xls-файлов мне показалось логичным.Правда, почти сразу же я столкнулся с первым неудобством. Суть его заключалась в том, что предлагаемый формат ссылок на файлы по умолчанию открывают файл, а не предлагают выбор открыть или скачать.
Возможно, кому-то так и удобней, но для части файлов, которые содержат макросы такой способ отображения может вызвать некорректную работу.
Быстрый поиск решения завершился успешно. Оказалось, что для формирования нужных мне ссылок нужно просто произвести небольшие манипуляции с текстом ссылки.

1) Ссылка по умолчанию (Google-Таблицы):
https://drive.google.com/file/d/0B3eOGZuGXnyDTnVLWkRFeDY4OFU/view?usp=sharing
2) Прямая ссылка:
https://drive.google.com/uc?export=download&id=0B3eOGZuGXnyDTnVLWkRFeDY4OFU

Естественно, вручную для каждого файла корректировать ссылки неудобно. Не сомневаюсь, что для решения подобной задачи уже имеются готовые решения, но я предлагаю вам просмотреть простой вариант ее решения с помощью текстовых функций MS Excel (+готовый пример внизу статьи).
Инструкция:
- Первое, что нам понадобится, это сама ссылка на файл из GoogleDrive
https://drive.google.com/file/d/0B3eOGZuGXnyDTnVLWkRFeDY4OFU/view?usp=sharing - Копируем ее в любую свободную ячейку на листе (в примере C1).
- Теперь нам нужно из нее как-то вытащить сам код файла. Самый простой способ определить, где он начинается, это ввести в соседнюю ячейку формулу:
=НАЙТИ("/d/";C1) - С ее помощью Excel найдет в нашей ссылке номер позиции искомого текста /d/, а именно число 30. Проще говоря, теперь мы знаем, что наш код файла начинается сразу после /d/, а значит с 33 (30+3) знака в ячейке.
- Ранее я уже упомянул, что код файла в GoogleDrive 28-значный. Убедиться в этом можете сами. Для этого вручную скопируйте сам код файла в любую свободную ячейку. Длину текстовой строки можно легко определить с помощью формулы:
=ДЛСТР(ссылка на ячейку) - Итак, теперь мы знаем, где начинается наш искомый текст и его длину. А значит, можно приступить к его вытаскиванию из нашей ссылки. Здесь нам на помощь приходит еще одна текстовая формула:
=ПСТР(C1;D1+3;28) - Формула ПСТР имеет 3 аргумента: текст, начальная_позиция и количество_знаков.
В нашем случае, текст - адрес ячейки со ссылкой на открытие файла (С1),
начальная_позиция - ссылка на ячейку из шага 4, увеличенная на 3 знака (D1+3),
количество символов - 28 (или можно указать и ссылку из шага 5).
В результате данной формулы мы получим полный код файла без ничего лишнего. - Остается только как-то объединить нужную нам маску прямой ссылки и полученный 28-значный код. Здесь можно, например, воспользоваться формулой:
=СЦЕПИТЬ("https://drive.google.com/uc?export=download&id=";G1)
Или просто обойтись знаком конкатенации &:
="https://drive.google.com/uc?export=download&id="&G1 - Вуаля! Теперь у нас есть универсальный преобразователь ссылок GoogleDrive для вставки файлов в блог. Надеюсь, кому-то он тоже пригодится
Естественно, все вышеперечисленные формулы не обязательно писать в разных ячейках. Да и для удобства наши ссылки и преобразования лучше засунуть в таблицу. Более-менее облагороженный вариант можете посмотреть по ссылке ниже.

Скачать
0 коммент.: