Чтобы извлечь текст из ячеек с датами в Google Sheets вместо временных меток, вы можете использовать метод `Utilities.formatDate()` для форматирования объектов даты. Ваша цель - получить дату в нужном формате, например "09.03.1980".
Вот пример скрипта, который демонстрирует это:
```javascript
function copyDataToGoogleDocs() {
// Открываем Google Sheets и выбираем лист
var spreadsheet = SpreadsheetApp.openById('Ваш_ID_таблицы');
var sheet = spreadsheet.getActiveSheet();
// Получаем все данные из таблицы
var data = sheet.getDataRange().getValues();
// Создаем новый документ Google Docs
var doc = DocumentApp.create('Название документа');
var body = doc.getBody();
// Проходим по строчкам данных
data.forEach(function(row) {
var formattedRow = row.map(function(cell) {
if (cell instanceof Date) { // Проверяем, является ли ячейка датой
return Utilities.formatDate(cell, Session.getScriptTimeZone(), 'dd.MM.yyyy'); // Форматируем дату
} else {
return cell; // Возвращаем текстовые значения без изменений
}
});
// Объединяем отформатированные значения в строку и добавляем в документ
body.appendParagraph(formattedRow.join(' '));
});
// Завершение работы и открытие нового документа
DocumentApp.openById(doc.getId());
}
```
### Объяснение скрипта:
1. **Получение данных**: Мы используем `sheet.getDataRange().getValues()`, чтобы получить данные из листа в виде двумерного массива.
2. **Создание документа**: Мы создаем новый документ Google Docs.
3. **Форматирование дат**: При переборе каждой строки мы проверяем, содержит ли ячейка объект `Date`. Если да, то мы используем `Utilities.formatDate()` для форматирования даты в нужный формат (например, "dd.MM.yyyy").
4. **Запись в документ**: Мы объединяем отформатированные значения и добавляем их в документ.
Эта функция решит вашу проблему с извлечением текста и корректным отображением дат в Google Docs. Обязательно замените `'Ваш_ID_таблицы'` на фактический ID вашего Google Sheet.