Субботние ответы, 27 января 2018

Субботние ответы, 27 января 2018

Google Таблицы, https://t.me/google_sheets
Добрый день! Я новичок. Немного работаю с таблицами. Такой вопрос.
Есть таблица со списками, к которой есть доступ у многих участников.
Не все из них понимают как пользоваться фильтром.
Можно ли как-то сделать форму или скрипт, так чтобы на первой странице было окно, где был бы выпадающий список, скажем с названиями тем. При выборе значения из списка чтобы возвращался ответ о том кто из спикеров, упомянутых в таблице владеет этой темой?

Не уверены, что правильно поняли вопрос, поэтому написали вам уточняющее письмо :) Пока ответим как поняли.

Итак, положим, у вас есть таблица со списком тем и спикеров. У каждого спикера может быть несколько тем.

На отдельном листе сделаем выпадающий список. Для этого заходим в Данные -> Проверка данных:

А там выбираем "Значения из диапазона" и выбираем диапазон с именами спикеров.


Пишем функцию FILTER, получаем список всех тематик выбранного спикера:


Здесь A2:A - список тем, B2:B - спикеров, A1 - ячейка с выпадающим списком.

Если же нужно наоборот выбирать тему и получать имя спикера, то хватит и функции ВПР:

Где G1 - выбранная тематика, а A2:B - исходный список.

Файл с примером


При частом использовании парсинга с помощью =IMPORTXML возникает проблема:
Возможно это связано с ограничением единовременного парсинга. Есть ли возможность это обойти?

Нормальными способами это не обойти, даже если вы попробуете парсить с помощью Google Script, то довольно быстро упретесь в квоты "скриптового времени в сутки", достигнув которых, скрипты на вашем аккаунте перестанут работать (в этот день).


Если из простых способов, то попробуйте разбить массив того, что вы парсите на несколько отдельных Таблиц (если не получится, то на несколько Таблиц с разными владельцами), каждая будет парсить свою часть, а далее соединяйте результат парсинга этих Таблиц в одном документе с помощью IMPORTRANGE.


Из способов посложней - мы подобную проблему решили написав python-приложение, сейчас оно лежит на нашем сервере, по расписанию парсит нужные json и добавляет данные в Google Таблицу.

и так далее, а особенно долго пришлось провозиться с "creditals", чтобы научиться вставлять данные в закрытую Google Таблицу

Задача: извлечь урл из-под текстовой ссылки (гиперлинка). В классическом Экселе решается с помощью VBA. А вот в гуглшитах не работает ВБА. Или надо что-то прикрутить? 

В Google Таблицах не работает VBA, но там работает Google Scripts.

Открываем Инструменты> редактор скриптов, вставляем код (пользовательская функция):


function getURL(input) {  

 var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()  

 var f = ss.getRange(input).getFormula()  

 var fa= f.substring(f.search("\"")+1, f.search(";")-1)

 return fa

}


Сохраняем проект и дальше эту пользовательскую функцию можно вводить в этой книге, указывая адрес нужной ячейки в кавычках. Функция будет вытаскивать из выбранной ячейки URL:

в ячейке A2: =ГИПЕРССЫЛКА("ya.ru";"123")

Ребзя, привет! Подскажите пожалуйста, как отправлять с определенной ячейки сообщение своему телеграм боту, начальный код есть (
function sendTelegramNotification(botSecret, chatId, body) {
var response = UrlFetchApp.fetch) чат айди и api бота есть, а что дальше вставить?

Привет, Денис! Держи статью, должна помочь: https://habrahabr.ru/post/326220

Report Page