Меню

Visual basic гугл таблицы

Скрипт записи изменения значений одной ячейки для google таблиц?

  • Facebook
  • Вконтакте
  • Twitter
  • Google

oshliaer

ProgrammerForever

  • Facebook
  • Вконтакте
  • Twitter
  • Google

Григорий, может Вы знаете, есть скрипт, который будет записывать в соседнюю ячейку кто внес изменения (например gmail). И если например дынные вводятся путем вставки из буфера диапазона, как сделать так чтобы скрипт также реагировал на все добавленные данные?
Заранее спасибо!

ProgrammerForever

ProgrammerForever

Для простых триггеров наподобие onEdit и пользовательских функций недоступен объект user, в этом можно убедиться если сделать такой код:

Но никто не запрещает сделать другую функцию и назначить ей триггер «При изменении» (ИзменитьТриггеры текущего проектаДобавление триггераonEditTriggerОсновное развертываниеИз таблицыПри редактированииСохранить):

Источник



Перенос макроса из Excel в Goggle таблицы

Всем привет. Я ничего не понимаю в программировании.

Искал макрос, который сделал бы 2 ячейки взаимосвязанными. Нашел. Но теперь мне нужно перенести его в Гугл таблицы.
Вот Макрос:

Помощь в написании контрольных, курсовых и дипломных работ здесь.

JavaScript Перенос макроса из Excel в Goggle таблицы — VBA
Всем доброго дня. Помогите плиз, не могу справиться. У меня написан макрос для ексель если в.

Перенос макроса Excel в Гугл Таблицу
Есть таблица в эксель с макросом. Помогите переписать код на ява скрипт для гугл таблицы.

Обращение из Word макроса в файл Excel и чтение данных с таблицы
Sub Foo() Public objExcelApp As Object Public mySettings As Object On Error Resume.

Перенос таблицы из Excel в Word
С новым годом, товарисчи программисты и простые смертные! 🙂 Счастья вам и здоровья в новом году, а.

Добрый день. Возможно сможете помочь.
Нужно в Google таблице сделать автоматическую вставку даты в ячейку при вводе данных.
Наткнулся в интернете на такой скрипт, но как его применить в google формах?

Добрый день!
Вы смогли разобраться?
Тоже уже второй день мучаюсь.
Подскажите, если знаете решение

Добавлено через 9 минут
Добрый день.
Также нужно в Google таблице в листе под названием АКТЫ СВЕРКИ автоматическую вставку даты в колонку А при вводе данных в колонку С.
Получился вот такой скрипт:

var vartoday = getDate();

sheet.getRange(idRow, 1).setValue( vartoday );
>
>

// Returns YYYYMMDD-formatted date.
function getDate() <
var today = new Date();
today.setDate(today.getDate());
//return Utilities.formatDate(today, ‘PST’, ‘yyyy.MM.dd’);
return Utilities.formatDate(today, ‘yyyy.MM.dd’);
>

Но он не работает, скрин ошибки:

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Перенос таблицы из Word в Excel
Доброго дня. появилась такая проблемка: есть электронная заявка(таблица в Excel) и есть вордовский.

Перенос данных с таблицы Excel по закладкам word
Макрос в excel считывает с ячейки первого столбца название закладки(назавания закладок я вношу в.

Перенос данных из таблицы на листах в один лист Excel
Приветствую! Столкнулся с такой задачей: Имеется файл с набором листов с данными в таблице.

Перенос информации из таблицы, находящейся в теле письма Outlook, в Excel
Доброго времени суток, форумчане. Прочитал множество тем, коснулся части книг(каюсь, прочитал их.

Источник

9 удивительных возможностей Google Таблиц

Favorite В закладки

9 удивительных возможностей Google Таблиц

Доказывающих, что этот редактор таблиц невероятно крут. И для 95% людей вполне может заменить Excel.

У Google Sheet есть два явных достоинства: он бесплатен и работает через браузер/мобильные приложения (App Store/Google Play). Многие воспринимают его просто как удобное средство для просмотра табличек, присланных по почте. Но такая точка зрения в корне неверна.

Вот обзор интересных возможностей Google Sheets, дополненный несколькими полезными мини-инструкциями, заставит вас посмотреть на приложение совсем другими глазами.

Читайте также:  Вселенские соборы таблица азбука

1. Совместная работа над документами

collective_acess

В Google Sheet очень просто организовать совместную работу над файлом. Надо нажать на кнопку Настройки доступа, ввести email нужного человека и выставить для него права: редактирование, комментирование или чтение.

Если в команде слишком много народу, а документ не содержит конфиденциальной информации, то можно включить доступ по ссылке и выложить ее где-нибудь.

Не стоит бояться, что кто-нибудь испортит документ. Все версии сохраняются в истории изменений и откат к более ранней версии можно произвести в пару кликов.

google_spread_sheet_history

Если очень надо, можно защитить от редактирования определенные диапазоны данных.

Инструкция по блокировке ячеек

1. Выделяем ячейки и нажимаем Защитить лист.
list_protect
2. Даем имя диапазону и нажимаем на кнопку Задать разрешения.
set_permissions_1
3. Указываем, кто имеет право редактировать диапазон.
set_permission_2

Еще в Google Sheets есть интересный способ указать пользователю на конкретное место в документе. Не надо писать человеку письмо “Привет, Василий! Проверь пожалуйста данные 125 ячейки 17 столбца 30 листа счета №343”. Надо просто нажать на эту ячейку правой кнопкой мыши, выбрать пункт меню “Добавить комментарий” и набрать “+ вопрос к нему”.

В ответ ему придет письмо со ссылкой на нужный лист, ячейку и комментарий. Это очень удобно.

К слову, в Excel тоже можно совместно работать над документами через OneDrive и Office Online. Но стоит это удовольствие от 299 рублей в месяц.

2. Формулы

В Google Sheet 371 функция! Здесь их полный список с описаниями на русском языке. Они распределены по 15 разделам:

categories_of_formulas

Для справки, в Excel их на сто функций больше. Если что-то очень нужное, как раз из этой сотни, это не повод отказываться от Google Spreadsheet. Ведь можно создать функцию под себя!

Инструкция по созданию собственных функций

1. Открываем редактор скриптов:

open_script_editor

2. Набираем код функции:

[jscript]
function c100wN(x) <
x = x*100*1.4;
return x;
>
[/jscript]

function_code

function_in_action

Этот пример функции очень простой, но вооружившись учебником по экономике/статистике/дискретной математике, вы сможете заставить Google SpreadSheet делать вычисления высокой степени сложности и избавиться от необходимости платить за Excel.

P.S. В Excel тоже можно создавать пользовательские функции.

3. Автоматизации

В этой сфере возможности предмета статьи поражают воображения. Автоматизировать можно практически все. Надо только немного подумать.

Мощнейший Google Apps Script (расширенная версия Java Script для работы с сервисами Google) может связать Sheets со следующими приложениями:

  • Google Docs;
  • Gmail;
  • Google Translate;
  • Google Forms;
  • Google Sites;
  • Google Translate;
  • Google Calendar;
  • Google Contacts;
  • Google Groups;
  • Google Maps.

Тему использования этого языка совместно с Google Таблицами на iphones.ru мы поднимали неоднократно:

4. Коллекция дополнений

Если вам не хватает каких-то возможностей в Google Sheet, то можно попробовать найти что-нужно среди дополнений. Страница с доступными аддонами открывается из меню Дополнения -> Установить дополнения.

google_sheet_addons

Я бы рекомендовала присмотреться к следующим дополнениям:

  • Styles;
  • Remove Blank Words;
  • Advanced Find And Replace;
  • Translate My Sheet;
  • Fitbit Activity Importer;
  • Magic JSON;
  • Drive Links Exporter.

5. Google Forms

Предположим, что нам надо сделать онлайн-опрос и собрать данные в таблицу для последующей обработки. Есть очень быстрый и бесплатный способ это сделать.

Организуем опрос с помощью сервисов Google

1. Инструменты -> Создать форму

create_forms

2. Заполняем информацию, придумываем вопросы.

create_poll

3. Получаем ссылку на готовый опрос.

link_form

opros_in_action

opros_end

5. Смотрим свой ответ на листе в таблице.

polls_data

Еще форму можно получить html-код формы и поставить ее на сайт.

form_for_web

html_form

6. Интеграция с Google Drive

Для хранения таблиц Google Sheets предоставляется 15 Гб места бесплатно. На том как крут этот сервис мы останавливаться не будем, а просто расскажем о беcценной фиче под названием ОФФЛАЙН РЕЖИМ. Он доступен для текстовых документов, таблиц и презентаций.

Читайте также:  Как поменять свинью таблица

О том как включить его в мобильных приложениях, а также десктопной версии браузера Chrome можно подробно ознакомиться здесь.

Стоит также уточнить, что использование Google Drive клиента на компьютере не позволяет работать с таблицами офлайн. Файлы Google Sheet хранятся на компьютере в виде файлов-ссылок, при открытии которых запускается браузер.

google_drive_client_string

7. Горячие клавиши

У Google Sheet есть несколько десятков сочетаний клавиш практически для всех действий. Полные списки для PC, Mac, Chromebook и Android можно посмотреть здесь.

8. Экспорт данных

Созданные таблицы можно не только просматривать и редактировать онлайн, но и скачивать в разнообразных форматах:

import_google_sheet

9. Мгновенная вставка картинок из интернета

На лист таблицы можно в два счета вставить любое изображение из сети. Просто вставьте в ячейку формулу как на рисунке:

gs_insert_image

Это были лишь некоторые из самых интересных фич. Если вы осознали мощь программы и захотели начать активно ее использовать, рекомендую посмотреть эти 16 видео-уроков для получения стартовых знаний.

Опрос: Что вы такого делаете в Excel, что не можете делать в Google Sheet?

Favorite В закладки

Источник

Google таблицы как база данных для веб-приложения. Часть 1

Кому-то тема данной статьи может показаться странной, но тем не менее такая возможность существует. Информация в сети есть, но она почти вся на английском и в разрозненном виде. Чтобы сложить картинку воедино мне с коллегой пришлось немало побродить по интернетам, поэтому я бы хотел для себя лично зафиксировать эту информацию в письменном виде.

В рамках цикла статей по данной теме, мы пошагово создадим небольшое приложение в виде чек-листа задач, в котором будут возможности создания, чтения, обновления и удаления элементов (CRUD). В качестве БД мы будем использовать Google Sheets, а в качестве серверного языка — Google Apps Script.

У этого подхода есть ряд своих минусов и ограничений, о которых я обязательно расскажу в процессе.

Создание скрипта и подключение к таблице

Для начала нам необходимо создать новую таблицу (сделать это можно из Google Drive, авторизовавшись под учетной записью Google). Назовем саму таблицу “tasklist”, а единственный лист — “tasks”.

Возвращаемся в Google Drive и создаем новый Google Apps Script (“Создать — Еще — Google Apps Script”). Назовем его также: “tasklist”.

Теперь переходим к написанию первого кода. В самом начале объявляем две переменные. Первая будет отвечать за подключение к таблице по URL. (Я не проверял, но скорее всего для успешного подключения вы должны являться и владельцем таблицы и владельцем скрипта).

Роутинг

Наш скрипт будет выполнять более чем одну функцию, ведь мы запланировали возможности создания, чтения, редактирования и удаления данных. Для этого мы должны как-то объяснить нашему скрипту, какое действие при каком запросе ему следует выполнять. За прослушивание запросов, отправленных методом POST у нас будет отвечать стандартная функция doPost (e), а для запросов, отправленных методом GET doGet (e), соответственно. Для маршрутизации запросов мы разместим внутри них switch, которые будут принимать переменную operation и в зависимости от того, какое мы передадим туда значение, тот или иной switch будет перенаправлять входящие запросы на соответствующие функции.

Добавление новых строк

Теперь мы готовы к тому, чтобы написать код, позволяющий с нашей таблицей конкретно взаимодействовать. К сожалению, Google Apps Script не поддерживает классические SQL команды, типа: INSERT, SELECT, UPDATE, DELETE, но все это сделать возможно немного иными путями и командами. Давайте посмотрим на примере функции, где для добавления новой строки мы будем использовать метод appendRow():

Читайте также:  Лабораторные работа логические элементы таблицы истинности

Получение строк из таблицы

Получить строки из таблицы можно двумя разными способами. В этой части мы рассмотрим самый простой из них, который подразумевает, что мы можем просто выбрать массив данных и вернуть его в виде JSON. Для этого мы будем использовать комбинацию методов getRange() и getValues().

Если требуется получить список задач с определенным статусом или за определенные даты, то мы можем пробежаться по полученному массиву в цикле и выбрать только нужные строки.

Первая публикация

Теперь мы готовы для публикации и первого теста. Отмечу, что первая публикация потребует чуть больше времени и действий, чем последующие обновления. Это связано с тем, что для работы нашего приложения в сети мы, как владельцы таблицы должны предоставить необходимые разрешения скрипту для работы с ней. Поехали.

  1. На верхней панели редактора скрипта выбираем пункты: “Опубликовать — Развернуть как веб приложение”.
  2. В поле “Как запускать приложение” выбираем “От моего имени (ваша почта)”.
  3. В поле “Кто имеет доступ к приложению” выбираем “Все, включая анонимных пользователей” и нажимаем “Развернуть”.
  4. Жмем “Предоставить разрешение”.
  5. Выбираем свой аккаунт.
  6. Жмем на ссылку “Дополнительные настройки”.
  7. Далее ссылка “Перейти на страницу “Название проекта” (небезопасно)”.
  8. На запрос “Приложение “Название проекта” запрашивает разрешение на доступ к вашему аккаунту Google” нажимаем “Разрешить”.
  9. И, наконец, увидев заветное “Этот проект развернут как веб-приложение”, сохраняем куда-нибудь текущий URL приложения и нажимаем на кнопку “ОК”.

Первая версия нашего приложения развернута и уже готова к работе. Проверить это можно, например, через Postman. Для этого в качестве адреса используем недавно полученный URL-адрес нашего приложения.

Как видим, запись в табличке появляется.

Удаление строк

Для удаления строк нам по аналогии с первой функцией требуется добавить case в наш switch внутри doPOST(e) и написать соответствующую функцию. Поехали:

Теперь создадим функцию, отвечающую за удаление строк. Чтобы удалить строку, нам для начала необходимо ее найти. В нормальных СУБД для этого используются уникальные id, которые автоматически присваиваются строкам при добавлении, и по которым можно впоследствии однозначно найти элементы. В нашем случае такой роскоши не предусмотрено. Конечно, можно придумать какой-нибудь выход и, например, при добавлении строк генерировать уникальный хеш-код на основе текущей даты и еще чего-нибудь, но в рамках данной статьи мы будем считать, что название задачи должно быть уникальным. По нему мы и будем искать элементы, пробегаясь в цикле по нашим записям, и удалять записи при помощи метода deleteRow().

Обновление строк

Принцип тот же. Начинаем с doPost(e) и далее добавляем соответствующую функцию.

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

Обновление проекта

Если мы сохраним изменения и захотим протестировать написанный код, отправив запросы на удаление или обновление через Postman, то… ничего не произойдет, т.к. мы не переопубликовали наш проект. Чтобы опубликовать проект с последними изменениями делаем следующее:

  1. На верхней панели редактора скрипта выбираем пункты: “Опубликовать — Развернуть как веб приложение”.
  2. В поле “Версия проекта” выбираем “Новый” и нажимаем на кнопку “Развернуть”.
  3. Описываем изменения (необязательно).
  4. В окне “Этот проект развернут как веб-приложение” нажимаем на кнопку “ОК”.

Источник

Adblock
detector