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

Вход

Регистрация

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

 

= Мир MS Excel/Формат ячейки "Полных лет" - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Формат ячейки "Полных лет" (Формулы/Formulas)
Формат ячейки "Полных лет"
Gold_Barsik Дата: Вторник, 02.07.2019, 16:19 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 459
Репутация: 6 ±
Замечаний: 0% ±

2003
Здравствуйте. Помогите с форматом ячейки.
Нужно что бы при вводе даты в ячейку (пример: 5.05.1995), ячейка отображала бы полных лет (1 год, 2 года, 5 лет)
 
Ответить
СообщениеЗдравствуйте. Помогите с форматом ячейки.
Нужно что бы при вводе даты в ячейку (пример: 5.05.1995), ячейка отображала бы полных лет (1 год, 2 года, 5 лет)

Автор - Gold_Barsik
Дата добавления - 02.07.2019 в 16:19
Pelena Дата: Вторник, 02.07.2019, 17:05 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
Без примера, только общий ответ. Посмотрите готовое решение http://www.excelworld.ru/board/excel/formulas/date_minus_date/3-1-0-8
Первая часть формулы - как раз Ваш случай


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
Без примера, только общий ответ. Посмотрите готовое решение http://www.excelworld.ru/board/excel/formulas/date_minus_date/3-1-0-8
Первая часть формулы - как раз Ваш случай

Автор - Pelena
Дата добавления - 02.07.2019 в 17:05
Gold_Barsik Дата: Вторник, 02.07.2019, 17:17 | Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 459
Репутация: 6 ±
Замечаний: 0% ±

2003
Не совсем понял ответ.
Нужно в пустую ячейку внести дату что бы она отобразила возраст (вместо даты).
 
Ответить
СообщениеНе совсем понял ответ.
Нужно в пустую ячейку внести дату что бы она отобразила возраст (вместо даты).

Автор - Gold_Barsik
Дата добавления - 02.07.2019 в 17:17
Pelena Дата: Вторник, 02.07.2019, 17:22 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
Чтобы получить возраст, надо выполнить вычисления. Формат не умеет производить вычисления.
Поэтому либо формулой, либо макросом


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЧтобы получить возраст, надо выполнить вычисления. Формат не умеет производить вычисления.
Поэтому либо формулой, либо макросом

Автор - Pelena
Дата добавления - 02.07.2019 в 17:22
Gold_Barsik Дата: Вторник, 02.07.2019, 17:25 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 459
Репутация: 6 ±
Замечаний: 0% ±

2003
А макросом это как будет выглядеть?
 
Ответить
СообщениеА макросом это как будет выглядеть?

Автор - Gold_Barsik
Дата добавления - 02.07.2019 в 17:25
Nic70y Дата: Вторник, 02.07.2019, 17:29 | Сообщение № 6
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2272 ±
Замечаний: 0% ±

Excel 2010
как-то так наскоряк
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then
        u = Target.Address
        v = Evaluate("=DATEDIF(" & u & ",TODAY(),""y"")")
        b = v Mod 10
        If (v > 4 And v < 20) Or b > 4 Or b = 0 Then
            a = " лет"
        Else
            a = " года"
            If b = 1 Then a = " год"
        End If
        Target.NumberFormat = v & a
    End If
End Sub
[/vba]вдруг правильно


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Вторник, 02.07.2019, 17:30
 
Ответить
Сообщениекак-то так наскоряк
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then
        u = Target.Address
        v = Evaluate("=DATEDIF(" & u & ",TODAY(),""y"")")
        b = v Mod 10
        If (v > 4 And v < 20) Or b > 4 Or b = 0 Then
            a = " лет"
        Else
            a = " года"
            If b = 1 Then a = " год"
        End If
        Target.NumberFormat = v & a
    End If
End Sub
[/vba]вдруг правильно

Автор - Nic70y
Дата добавления - 02.07.2019 в 17:29
Gold_Barsik Дата: Вторник, 02.07.2019, 17:32 | Сообщение № 7
Группа: Проверенные
Ранг: Обитатель
Сообщений: 459
Репутация: 6 ±
Замечаний: 0% ±

2003
А попробую я, была-не была.
 
Ответить
СообщениеА попробую я, была-не была.

Автор - Gold_Barsik
Дата добавления - 02.07.2019 в 17:32
Gold_Barsik Дата: Вторник, 02.07.2019, 17:36 | Сообщение № 8
Группа: Проверенные
Ранг: Обитатель
Сообщений: 459
Репутация: 6 ±
Замечаний: 0% ±

2003
Не проканала.
нужно в ячейку J6.
Ещё и кошка тут мешается под руками. Можно подумать что в Excel разбирается ).


Сообщение отредактировал Gold_Barsik - Вторник, 02.07.2019, 17:37
 
Ответить
СообщениеНе проканала.
нужно в ячейку J6.
Ещё и кошка тут мешается под руками. Можно подумать что в Excel разбирается ).

Автор - Gold_Barsik
Дата добавления - 02.07.2019 в 17:36
Nic70y Дата: Вторник, 02.07.2019, 17:36 | Сообщение № 9
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2272 ±
Замечаний: 0% ±

Excel 2010
чево это?
К сообщению приложен файл: 5754734.xlsm (16.9 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщениечево это?

Автор - Nic70y
Дата добавления - 02.07.2019 в 17:36
Nic70y Дата: Вторник, 02.07.2019, 17:38 | Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2272 ±
Замечаний: 0% ±

Excel 2010
Range("A1:A65536")
замените на
J6.


ЮMoney 41001841029809
 
Ответить
Сообщение
Range("A1:A65536")
замените на
J6.

Автор - Nic70y
Дата добавления - 02.07.2019 в 17:38
Gold_Barsik Дата: Вторник, 02.07.2019, 17:44 | Сообщение № 11
Группа: Проверенные
Ранг: Обитатель
Сообщений: 459
Репутация: 6 ±
Замечаний: 0% ±

2003
при попытках ввести новые значения (типа 01.01.2019), отображения остаются прежними (2 год, 49 лет, 1 год, 11 лет, 21 год)
 
Ответить
Сообщениепри попытках ввести новые значения (типа 01.01.2019), отображения остаются прежними (2 год, 49 лет, 1 год, 11 лет, 21 год)

Автор - Gold_Barsik
Дата добавления - 02.07.2019 в 17:44
Gold_Barsik Дата: Вторник, 02.07.2019, 17:45 | Сообщение № 12
Группа: Проверенные
Ранг: Обитатель
Сообщений: 459
Репутация: 6 ±
Замечаний: 0% ±

2003
менял, ругается, на Worksheet_Change
а на 2003 не пробовал?


Сообщение отредактировал Gold_Barsik - Вторник, 02.07.2019, 21:25
 
Ответить
Сообщениеменял, ругается, на Worksheet_Change
а на 2003 не пробовал?

Автор - Gold_Barsik
Дата добавления - 02.07.2019 в 17:45
Nic70y Дата: Среда, 03.07.2019, 08:15 | Сообщение № 13
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2272 ±
Замечаний: 0% ±

Excel 2010
пробовал, только что на серваке,
на компе 2010,
хотя это значения не имеет.

макрос в модуле листа?
должен быть там.
макросы вообще подключены?
должны быть подключены.
К сообщению приложен файл: 2256883.xls (27.5 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщениепробовал, только что на серваке,
на компе 2010,
хотя это значения не имеет.

макрос в модуле листа?
должен быть там.
макросы вообще подключены?
должны быть подключены.

Автор - Nic70y
Дата добавления - 03.07.2019 в 08:15
Gold_Barsik Дата: Суббота, 13.07.2019, 11:05 | Сообщение № 14
Группа: Проверенные
Ранг: Обитатель
Сообщений: 459
Репутация: 6 ±
Замечаний: 0% ±

2003
Ну вот, добрался до компа.
Макросы разрешаю при запуске файла.
А вот насчёт модуля не совсем так. Модуля нет, прописываю как и у вас в листе. Но. Там получается что два макроса "Private Sub Worksheet_Change(ByVal Target As Range)". Можно ли так? Не знаю. Может из-за этого выскакивает ошибка?
Файл "малость" переделал. Ячейка для возраста F6.

Уф. получилось. Объединил оба макроса. Большое спасибо!
К сообщению приложен файл: 4179619.xls (72.5 Kb)


Сообщение отредактировал Gold_Barsik - Суббота, 13.07.2019, 11:15
 
Ответить
СообщениеНу вот, добрался до компа.
Макросы разрешаю при запуске файла.
А вот насчёт модуля не совсем так. Модуля нет, прописываю как и у вас в листе. Но. Там получается что два макроса "Private Sub Worksheet_Change(ByVal Target As Range)". Можно ли так? Не знаю. Может из-за этого выскакивает ошибка?
Файл "малость" переделал. Ячейка для возраста F6.

Уф. получилось. Объединил оба макроса. Большое спасибо!

Автор - Gold_Barsik
Дата добавления - 13.07.2019 в 11:05
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Формат ячейки "Полных лет" (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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