Как перенести гугл календарь на компьютер

Обновлено: 02.07.2024

Если вы хотите импортировать свой Google Календарь в Outlook, вам не придется повторно вносить все встречи. Вместо этого экспортируйте календарь Google в файл, а затем импортируйте сведения в Outlook на компьютере. Это невозможно сделать одним нажатием кнопки, но мастер поможет вам выполнить все необходимые действия.

Если вы хотите синхронизировать Google Календарь с календарем Outlook, см. статью о том, как подписаться на Google Календарь.

Если на компьютере не установлено приложение Outlook, импортировать календарь Google в Outlook Web App и Outlook в Интернете невозможно, но вы можете подписаться на календарь Google. В этом случае вы получите меньше возможностей, чем при импорте календаря.

Посмотрите видеоролик, в котором показано, как импортировать календарь Google в Outlook. Ниже вы найдете пошаговое описание процедуры.

Шаг 1. Экспорт календаря Google

Войдите в свою учетную запись Google Gmail и выберите пункт Календарь.

Последовательно выберите Мои календари > Настройки.

Выберите "Мой календарь", а затем — "Настройки".

Щелкните ссылку Экспортировать календари.

Выбор команды "Экспорт календарей"

Выберите папку для сохранения извлеченного файла.

Перейдите в эту папку и распакуйте файл: щелкните его правой кнопкой мыши и выберите команду Извлечь все.

Щелкните файл правой кнопкой мыши и выберите пункт "Извлечь".

Результат будет выглядеть примерно так:

Внешний вид экспортированного календаря после распаковки.

Если у вас несколько календарей Google, вы увидите ICS-файл для каждого из них.

Теперь можно импортировать календарь Google в Outlook.

Шаг 2. Импорт календаря Google в Outlook

Повторите этот шаг для каждого календаря Google, который нужно импортировать в Outlook.

В классической версии Outlook (Outlook 2013 или Outlook 2016) откройте Календарь.

На вкладке Файл последовательно выберите команды Открыть и экспортировать > Импорт и экспорт.

В окне "Мастер импорта и экспорта" выберите пункт Импорт файла iCalendar (.ics) или vCalendar (.vcs) и нажмите кнопку Далее.

Выберите для импорта файл, имя которого заканчивается на gmail.com.

При запросе на импорт или на открытие в качестве нового календаря выберите команду "Импорт".

Перейдите к календарю Outlook. Теперь вы увидите в нем события из календаря Google.

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

В данной статье разберемся, как можно синхронизировать Гугл календарь с календарем Яндекс и с телефоном или планшетом на Android, установив на устройство приложение Google Календарь.

Экспорт из календаря Яндекса в Google

Для начала зайдите в Яндекс календарь. Нажмите на кнопочку «Экспорт», которая расположена с правой стороны.

Экспорт меропиятий из Яндекс календаря

Появится окошко, в котором нужно выбрать календарь для экспорта. Я буду экспортировать Мои события. К этому календарю относится напоминание на 14 июня в 8,30 Позвонить Кате.

Напротив этого календаря, выберите формат файла iCal, кликнув по нему мышкой.

Выберите iCal

Далее появится окошко с ссылкой. Нажмите на нее, чтобы скачать на компьютер файл в выбранном формате. Чтобы закрыть данное окно, нажмите «ОК».

Нажмите на ссылку

Заходим в Google календарь. Нам нужно добавить в него только что экспортированный файл.

Кликаем мышкой на значок в виде шестеренки в правом верхнем углу и выбираем из списка «Настройки».

Открываем Настройки

В настройках переходим на вкладку «Календари» и нажимаем на кнопочку «Импортировать календарь».

Импортировать календарь

В следующем окне нажмите на «Выберите файл».

Кнопка Выберите файл

Найдите на компьютере папку с загрузками, там вы увидите нужный файл, который был экспортирован из Яндекс календаря. Выделите его и нажмите «Открыть».

Найдите нужный файл

Возвращаемся к предыдущему окну и жмем «Импортировать».

Кнопка Импортировать

Оповещение о завершении

Также оно появится на календаре в соответствии с датой и временем.

Показывается на календаре

Синхронизация календаря с Андроид устройством

Если вам нужно синхронизировать Гугл календарь с мобильным устройством или планшетом на Андроид, скачайте приложение Календарь с Play Market. Как это сделать, описано в статье: как войти в Гугл календарь.

Скачайте приложение на устройство

Запустите установленное приложение на мобильном устройстве.

Запустите мобильное приложение

После этого, веб-версия и мобильная версия Google календаря автоматически синхронизируются.

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

Автоматическая синхронизация

Вот такими не сложными способами, у нас получилось синхронизировать Гугл календарь с Яндекс календарем и с телефоном или планшетом, на базе Android.

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

Предлагаю два варианта.

1. Сработало на HTC Desire
Приложение "Календарь". Меню -> Дополнительно -> Календари.
Нажимаем снова меню -> удаление календарей.
Удаляем нужные календари, выходим.
Теперь всё сначала, только заходим в Добавление календарей и возвращаем всё взад.
Произойдёт синхронизация и события вернутся.

В гугле есть основной календарь, а в дополнение к нему подцеплены дни рождения, праздники и др. календари. Проблема заключается в том, что дополнительные календари отображаются И отдельно, И внутри основного календаря, причем с различным настройками часовых поясов. Соответсвенно, эта же фигня вылазит и на гуглофоне.
Хочется в основном календаре видеть только свои заметки/события, а все остальное отдельными календарями, которые можно включать/выключать.
Подскажите, как бороться с этой проблемой или хотя бы где искать.
Спасибо

У меня было такое, когда ББ в лице Lookout запихал мне в телефон свой календарь и дни рождения друзей в дополнение к тому, что я портировал список контактов в гугл своими руками.
Вышли сдвоенные дни рождения в соседних днях.
Решал так:
1)зарёкся запускать любые программы синхронизации с Lookout
2)вручную стёр дни рождения из календаря гугл (подключил спецкалендарь гугла) А у меня проблема в том, что календарь показывает праздники/др и прочее только до января 2013.
Или это нормально (типа потом обновится на следующий год?)
Xperia X10
dimusische, а где можно найти эти "готовые решения"? Что-то я погуглил мне ничего толкового не выдало. а где можно найти эти "готовые решения"? Что-то я погуглил мне ничего толкового не выдало.

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

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

Подтверждаю, у меня такая-же проблема на honor u8860. В телефоне не отображались дни рождения контактов в календаре, синхронизированным с googlом.
Вылечил следующим образом: заходим в приложение календарь->жмем значок меню->еще->календари->отключаем/нажимаем на дни рождения и мероприятия (чтобы слева значок синхронизации и глаз стали серыми)->нажимаем внизу ОК->выходим из приложения календарь->
заходим в приложение календарь->жмем значок меню->еще->календари->нажимаем на дни рождения и мероприятия (чтобы слева значок синхронизации и глаз стали черными)->произойдет синхронизация и дни рождения контактов отобразятся на календаре телефона.

И мои 5 копеек.
Проблема таже - с ББ - на устройство не попадают ДР.

Во многих советах - рекомендуется убить дополнительные календари на устройстве (не галочку снять а именно удалить). ПОДТВЕРЖДАЮ. На Вилдфайр - так получилось. Правда - при каждом новом добавлении ДР на ББ - надо выполнить эту процедуру.

НА Дизайр С - стоИт более новая версия Анрюши - 2.3.5 и 3.0 Сенс.

Так вот. В этой версии - в приложении календарь - работа с доп. календарями - устроена - ПОДРУГОМУ. Если на ББ подписаться на доп. календарь, то этот календарь автоматически появляется в списке календарей. И принудительно его удалить с устройства - нельзя. Только отключить - сняв галочку. Но это - не помогает.

Если отписаться от календаря на ББ - но и на устройстве - календарь пропадает из списка.

Пока так и живу - на ББ - есть ДР в календаре, а на устройство - не закачиваются.

Выручает доп. программа по ДР, которая берет информацию из карточек контатов. Так узнаю, когда у кого ДР.

Хотел бы попробовать, но как то страшновато, чтоб не грохнуть лишнего.
Нашел у себя в списке приложений:
- Синхронизация календаря - 256К
- Память календаря - 3.77МБ
- Календарь 8.0 КБ
- Виджет Календарь 4.00 КБ

кого чистим? Всех?

Хотел бы попробовать, но как то страшновато, чтоб не грохнуть лишнего.
Нашел у себя в списке приложений:
- Синхронизация календаря - 256К
- Память календаря - 3.77МБ
- Календарь 8.0 КБ
- Виджет Календарь 4.00 КБ

кого чистим? Всех?

Порылся на других форумах. Нашел пост на эту тему - с явным указанием очистить кэш у двух приложений- Память календаря (Гугловский календарь) и Календарь (HTC-шный календарь). Очистил.

Посмотрел. Все события старше 2 мес - отсутствуют . И все повторяющиеся - (ДР) - записались на год вперед. Что вероятно - правильно.

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

Это можно сделать, перейдя на страницу своего Google Drive.



Рис. 1. Правый клик мышью по рабочему пространству открывает контекстное меню, где нужно выбрать "Google Таблицы" — "Создать пустую таблицу"

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

  • Название мероприятия
  • Дата мероприятия
  • Время начала
  • Время конца или длительность (впрочем, это необязательно — в итоге вы сможете установить какое-нибудь общее дефолтное значение длительности мероприятия, например 1 час, или вовсе сделать мероприятие, длящимся целый день)

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



Рис. 2. Таблица с расписанием

2. Создаем скрипт

2.1. Переходим в редактор скриптов

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



Рис. 3. Скрипт создается, через меню "Инструменты", в котором нужно выбрать пункт "Редактор скриптов"

Скрипты разрабатываются на языке JavaScript. Только что созданный скрипт содержит одну пустую функцию myFunction. Писать код можно в ней, но я предпочту дать ей более осмысленное имя SetCalendar.



Рис. 4. Созданный скрипт, дадим функции осмысленное имя — SetCalendar

Над редактором кода имеется выпадающий список, который позволяет выбрать основную функцию, которая будет являться точкой входа в запущенный скрипт. В нашем случае следуем выбрать функцию SetCalendar.

2.2. Разбираемся с отладкой

Часто для отладки скриптов на JavaScript мы выводим различные значения в консоль:

В Google Apps Script логировать значения следует немного иначе. Вместо объекта console следует использовать глобальный объект Logger:

После запуска скрипта, все выведенные в лог значения можно посмотреть из меню "Вид", выбрав пункт "Журналы" или же по сочетанию клавиш Ctrl+Enter:



Рис. 5. Модальное окно с логами последнего запуска скрипта

2.3. Извлекаем информацию о мероприятиях из таблицы

Сразу небольшой кусок кода

Рассмотрим строку 11.

Глобальный объект SpreadsheetApp — глобальный объект, содержащий методы, представляющие собой интерфейс для взаимодействия скрипта с приложением Google Sheets.

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

Метод возвращает объект sheet.

Далее, нужно получить объект range — он представляет собой диапазон ячеек таблицы, из которых мы будем извлекать данные. Это делается путем вызова метода getRange. В качестве параметров передаются:

  • Индекс первой строки диапазона
  • Индекс первого столбца диапазона
  • Количество извлекаемых строк
  • Количество извлекаемых столбцов
Обратите внимание! Индексация строк и столбцов начинается с 1.

Строка 15: мы получаем из выбранного выше диапазона ячеек непосредственно данные путем вызова метода getDisplayValues.

Обратите внимание! Метод getDisplayValues() отдает данные в том виде, в каком он отображается в ячейках таблицы. Например, если ячейка содержит дату, то указанный метод вернет не какое-то внутреннее представление записанной в ячейку даты, а ее представление, которое видит пользователь в ячейке.

2.4. Извлекаем данные из ячеек

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

Вы можете посмотреть какие столбцы стоят в таблице под данными номерами на рисунке 2.

Объект data представляет набор ячеек с данными, которые были получены. Теперь нужно получить данные из отдельных ячеек.

Чтобы получить дату-время начала и окончания занятия, нужно вызывать функцию extractPeriod и передать две строки — дата и временной период, в который длится занятие.

2.7. Создание события в Google Calendar

Сразу небольшой листинг, пояснения будут дальше

Строки 1-6: получаем дату-время начала и окончания занятия, а также склеиваем в одну строку всю дополнительную информацию, которая будет записана в описание мероприятия в календаре.

Далее, к интерфейсу сервиса Google Calendar мы обращаемся через методы глобального объекта CalendarApp.

Посредством метода getCalendarsByName мы получаем массив календарей с указанным именем.

Получить объект-календарь можно также посредством метода getDefaultCalendar, тогда событие будет создано в основном календаре. Однако, я советую зайти в веб-версию Google Calendar и создать новый календарь, в который вы будете экспортировать мероприятия. Во-первых, вы получаете возможность скрывать события этого календаря, выделять события отдельным цветом.

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

В данном случае я создал календарь "Учеба", и собираюсь создавать события в нем. Поэтому в коде вызывается метод getCalendarsByName и в качестве параметра передается срока "Учеба".

Метод возвращает массив календарей с указанным названием, поэтому нужно взять из этого массива один элемент, в нашем случае нулевой:

У объекта-календаря необходимо вызывать метод createEvent. В качестве параметров нужно передать следующее:

  • Название мероприятия (в данном случае название дисциплины)
  • Объект Data — дата-время начала мероприятия
  • Объект Data — дата-время окончания мероприятия
  • Необязательный параметр — объект с дополнительными опциями (в данном случае я заполняю одно поле — description — это описание мероприятия)

Последняя строка в скрипте — задержка на 50 миллисекунд. Во время разработки скрипта и отладки я обнаружил, что иногда при выполнении кода выбрасывается исключение, суть которого в том, что Google Calendar не нравятся частые обращения к сервису, и в описании исключения рекомендуется вставить задержку между вызовами методов API календаря.

3. Итоговый скрипт

Ниже приведен полный скрипт, который получился

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

4. Немножко скриншотов



Что можно улучшить

  • Некоторые значения в коде я просто захардкодил — например, индексы начала таблицы, размеры таблицы, количество строк (количество мероприятий). Теоретически, можно покопаться в API Google Sheets для Google Apps Script и придумать, как выцеплять нужные координаты ячеек автоматически;
  • Я никогда плотно не изучал JavaScript, могут быть различные стилистические и прочие недостатки в коде, возможно тот же парсинг даты-времени можно сделать красивее и элегантнее.

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

Читайте также: