Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Сложение дат в Access - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Сложение дат в Access
ltx80 Дата: Понедельник, 14.04.2025, 11:00 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

2019
На скрине показаны данные. Как в формуле 1 прописать, чтобы данные брались из второй колонки. По данной формуле берется только цифра 5 (т.е. к дате договора прибавляется только 5)?
К сообщению приложен файл: 6312058.png (28.4 Kb) · 2602311.png (23.4 Kb) · 2117689.png (7.0 Kb)


Сообщение отредактировал ltx80 - Вторник, 15.04.2025, 08:54
 
Ответить
СообщениеНа скрине показаны данные. Как в формуле 1 прописать, чтобы данные брались из второй колонки. По данной формуле берется только цифра 5 (т.е. к дате договора прибавляется только 5)?

Автор - ltx80
Дата добавления - 14.04.2025 в 11:00
ltx80 Дата: Вторник, 15.04.2025, 08:33 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

2019
:)


Сообщение отредактировал ltx80 - Вторник, 15.04.2025, 08:57
 
Ответить
Сообщение:)

Автор - ltx80
Дата добавления - 15.04.2025 в 08:33
Gustav Дата: Вторник, 15.04.2025, 10:38 | Сообщение № 3
Группа: Админы
Ранг: Участник клуба
Сообщений: 2841
Репутация: 1194 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Как-то так попробуйте:
[vba]
Код
DateAdd("yyyy", [Срок освоения], [Дата договора])
[/vba]
Возможно, в качестве разделителя параметров функции вместо запятой нужно использовать точку с запятой (;).


МОИ: Ник, Tip box: 41001663842605
 
Ответить
СообщениеКак-то так попробуйте:
[vba]
Код
DateAdd("yyyy", [Срок освоения], [Дата договора])
[/vba]
Возможно, в качестве разделителя параметров функции вместо запятой нужно использовать точку с запятой (;).

Автор - Gustav
Дата добавления - 15.04.2025 в 10:38
ltx80 Дата: Вторник, 15.04.2025, 14:15 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

2019
Gustav, не дает вставить функцию DateAdd, пишет ошибку "невозможно использовать в вычисляемом столбце". В качестве разделителя параметров функции вместо запятой поставила точку с запятой (;)
 
Ответить
СообщениеGustav, не дает вставить функцию DateAdd, пишет ошибку "невозможно использовать в вычисляемом столбце". В качестве разделителя параметров функции вместо запятой поставила точку с запятой (;)

Автор - ltx80
Дата добавления - 15.04.2025 в 14:15
Pelena Дата: Вторник, 15.04.2025, 15:43 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 19475
Репутация: 4590 ±
Замечаний: ±

Excel 365 & Mac Excel
ltx80, приложите пример структуры таблиц.
Довольно много есть нюансов.
Поля подстановки в таблицах - не есть хорошо. Но даже если оставить, (по второму скрину) присоединенным должен быть первый столбец.
Вычисления рекомендуется производить в запросах, а не в таблицах


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщениеltx80, приложите пример структуры таблиц.
Довольно много есть нюансов.
Поля подстановки в таблицах - не есть хорошо. Но даже если оставить, (по второму скрину) присоединенным должен быть первый столбец.
Вычисления рекомендуется производить в запросах, а не в таблицах

Автор - Pelena
Дата добавления - 15.04.2025 в 15:43
Gustav Дата: Вторник, 15.04.2025, 16:55 | Сообщение № 6
Группа: Админы
Ранг: Участник клуба
Сообщений: 2841
Репутация: 1194 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
не дает вставить функцию DateAdd, пишет ошибку "невозможно использовать в вычисляемом столбце"
Вам прямо суперточность нужна? А то можно такое простое и слегка приближенное выражение попробовать:
[vba]
Код
[Дата договора] + [Срок освоения] * 365
[/vba]
Ну, или немного поточнее (+/- один день):
[vba]
Код
[Дата договора] + Int( [Срок освоения] * 365,25 )
[/vba]
P.S. Наконец, в сложившихся условиях абсолютно точная формула, работающая с целочисленными сроками освоения:
[vba]
Код
DateSerial(Year([Дата договора]) + [Срок освоения]; Month([Дата договора]); Day([Дата договора]))
[/vba]

А вообще Елена права: делайте вычислительные поля в запросах (а не в таблицах!) и будет вам счастье. Я вот быстренько в своей тестовой базе набросал запрос - работает:
[vba]
Код
SELECT Customers.Поле2, DateAdd("yyyy",5,[Поле2]) AS Выражение1
FROM Customers;
[/vba]
DateAdd в запросе прекрасно кушает и даже функции, определенные пользователем, кушает.


МОИ: Ник, Tip box: 41001663842605
 
Ответить
Сообщение
не дает вставить функцию DateAdd, пишет ошибку "невозможно использовать в вычисляемом столбце"
Вам прямо суперточность нужна? А то можно такое простое и слегка приближенное выражение попробовать:
[vba]
Код
[Дата договора] + [Срок освоения] * 365
[/vba]
Ну, или немного поточнее (+/- один день):
[vba]
Код
[Дата договора] + Int( [Срок освоения] * 365,25 )
[/vba]
P.S. Наконец, в сложившихся условиях абсолютно точная формула, работающая с целочисленными сроками освоения:
[vba]
Код
DateSerial(Year([Дата договора]) + [Срок освоения]; Month([Дата договора]); Day([Дата договора]))
[/vba]

А вообще Елена права: делайте вычислительные поля в запросах (а не в таблицах!) и будет вам счастье. Я вот быстренько в своей тестовой базе набросал запрос - работает:
[vba]
Код
SELECT Customers.Поле2, DateAdd("yyyy",5,[Поле2]) AS Выражение1
FROM Customers;
[/vba]
DateAdd в запросе прекрасно кушает и даже функции, определенные пользователем, кушает.

Автор - Gustav
Дата добавления - 15.04.2025 в 16:55
ltx80 Дата: Пятница, 18.04.2025, 07:12 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

2019
Pelena, спасибо большое) Вопрос решен через запрос hands
 
Ответить
СообщениеPelena, спасибо большое) Вопрос решен через запрос hands

Автор - ltx80
Дата добавления - 18.04.2025 в 07:12
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!