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

Вход

Регистрация

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

 

= Мир MS Excel/Автоматический ввод текущей даты - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Автоматический ввод текущей даты
saine Дата: Понедельник, 28.08.2017, 03:43 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 11
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый вечер. Подскажите пожалуйста как сделать, что бы при заполнении ячейки в соседней ячейки выводилась дата и время
 
Ответить
СообщениеДобрый вечер. Подскажите пожалуйста как сделать, что бы при заполнении ячейки в соседней ячейки выводилась дата и время

Автор - saine
Дата добавления - 28.08.2017 в 03:43
Nic70y Дата: Понедельник, 28.08.2017, 06:41 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 9122
Репутация: 2415 ±
Замечаний: 0% ±

Excel 2010
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then
Target.Offset(0, 1).Value = CDate(Format(Now(), "hh:mm:ss DD.MM.YY"))
End If
End Sub
[/vba]так правильнее наверное:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then
    If Target.Offset(0, 1) = "" Then
    Target.Offset(0, 1).Value = CDate(Format(Now(), "hh:mm:ss DD.MM.YY"))
    End If
End If
End Sub
[/vba]


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Понедельник, 28.08.2017, 06:45
 
Ответить
Сообщение[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then
Target.Offset(0, 1).Value = CDate(Format(Now(), "hh:mm:ss DD.MM.YY"))
End If
End Sub
[/vba]так правильнее наверное:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A65536")) Is Nothing Then
    If Target.Offset(0, 1) = "" Then
    Target.Offset(0, 1).Value = CDate(Format(Now(), "hh:mm:ss DD.MM.YY"))
    End If
End If
End Sub
[/vba]

Автор - Nic70y
Дата добавления - 28.08.2017 в 06:41
DrMini Дата: Вторник, 29.08.2017, 11:19 | Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2036
Репутация: 316 ±
Замечаний: 0% ±

Excel LTSC 2024 RUS
Доброго времени суток.
Nic70y, Ваш макрос мне тоже подошёл почти идеально. Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.
 
Ответить
СообщениеДоброго времени суток.
Nic70y, Ваш макрос мне тоже подошёл почти идеально. Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.

Автор - DrMini
Дата добавления - 29.08.2017 в 11:19
_Boroda_ Дата: Вторник, 29.08.2017, 11:40 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16880
Репутация: 6593 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Немного более другой макрос. Поддерживает множественный - сразу в несколько ячеек - ввод (через Контрл+Ентер или копированием-вставкой). При удалении значения в А стирает дату в В и убирает границы. Если это не нужно, то сотрите две строки между IF и ELSE
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim d0_ As Range, d_ As Range
    Set d0_ = Intersect(Target, Columns(1))
    If Not d0_ Is Nothing Then
        Application.ScreenUpdating = 0
        cal_ = Application.Calculation
        Application.Calculation = xlCalculationManual
        Application.EnableEvents = 0
        For Each d_ In d0_
            With d_
                If .Value = "" Then
                    .Offset(, 1).ClearContents
                    d_.Resize(, 2).Borders.LineStyle = xlNone
                Else
                    .Offset(, 1) = CDate(Format(Now(), "hh:mm DD.MM.YY"))
                    d_.Resize(, 2).Borders.Weight = xlThin
                End If
            End With
        Next d_
        Application.EnableEvents = 1
        Application.Calculation = cal_
        Application.ScreenUpdating = 1
    End If
End Sub
[/vba]
К сообщению приложен файл: 7165786.xlsm (17.1 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНемного более другой макрос. Поддерживает множественный - сразу в несколько ячеек - ввод (через Контрл+Ентер или копированием-вставкой). При удалении значения в А стирает дату в В и убирает границы. Если это не нужно, то сотрите две строки между IF и ELSE
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim d0_ As Range, d_ As Range
    Set d0_ = Intersect(Target, Columns(1))
    If Not d0_ Is Nothing Then
        Application.ScreenUpdating = 0
        cal_ = Application.Calculation
        Application.Calculation = xlCalculationManual
        Application.EnableEvents = 0
        For Each d_ In d0_
            With d_
                If .Value = "" Then
                    .Offset(, 1).ClearContents
                    d_.Resize(, 2).Borders.LineStyle = xlNone
                Else
                    .Offset(, 1) = CDate(Format(Now(), "hh:mm DD.MM.YY"))
                    d_.Resize(, 2).Borders.Weight = xlThin
                End If
            End With
        Next d_
        Application.EnableEvents = 1
        Application.Calculation = cal_
        Application.ScreenUpdating = 1
    End If
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 29.08.2017 в 11:40
DrMini Дата: Вторник, 29.08.2017, 14:16 | Сообщение № 5
Группа: Модераторы
Ранг: Старожил
Сообщений: 2036
Репутация: 316 ±
Замечаний: 0% ±

Excel LTSC 2024 RUS
Александр спасибо большое за Ваше решение. Вечерком дома попробую. Надеюсь, что разберусь, как изменить "координаты" вставки данных в документ.
СПАСИБО, что есть этот сайт и такие люди.
P.S. Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.


Сообщение отредактировал DrMini - Вторник, 29.08.2017, 14:18
 
Ответить
СообщениеАлександр спасибо большое за Ваше решение. Вечерком дома попробую. Надеюсь, что разберусь, как изменить "координаты" вставки данных в документ.
СПАСИБО, что есть этот сайт и такие люди.
P.S. Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.

Автор - DrMini
Дата добавления - 29.08.2017 в 14:16
_Boroda_ Дата: Вторник, 29.08.2017, 14:25 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 16880
Репутация: 6593 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.

Никак. В макросе все именно так и делается


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
Подскажите, как изменить макрос что бы формат ячейки в колонке B был ГГГГ.ММ.ДД ч:мм и в ячейках после заполнения в колонке А и B появлялись границы. Без использования УФ.

Никак. В макросе все именно так и делается

Автор - _Boroda_
Дата добавления - 29.08.2017 в 14:25
DrMini Дата: Вторник, 29.08.2017, 14:32 | Сообщение № 7
Группа: Модераторы
Ранг: Старожил
Сообщений: 2036
Репутация: 316 ±
Замечаний: 0% ±

Excel LTSC 2024 RUS
В макросе все именно так и делается

Вот скрин.
К сообщению приложен файл: 5445389.jpg (24.0 Kb)
 
Ответить
Сообщение
В макросе все именно так и делается

Вот скрин.

Автор - DrMini
Дата добавления - 29.08.2017 в 14:32
Nic70y Дата: Вторник, 29.08.2017, 14:34 | Сообщение № 8
Группа: Друзья
Ранг: Экселист
Сообщений: 9122
Репутация: 2415 ±
Замечаний: 0% ±

Excel 2010
[vba]
Код
                Else
                    .Offset(, 1) = Now
                    .Offset(, 1).NumberFormat = "yyyy/mm/dd h:mm"
                    d_.Resize(, 2).Borders.Weight = xlThin
                End If
[/vba]


ЮMoney 41001841029809
 
Ответить
Сообщение[vba]
Код
                Else
                    .Offset(, 1) = Now
                    .Offset(, 1).NumberFormat = "yyyy/mm/dd h:mm"
                    d_.Resize(, 2).Borders.Weight = xlThin
                End If
[/vba]

Автор - Nic70y
Дата добавления - 29.08.2017 в 14:34
_Boroda_ Дата: Вторник, 29.08.2017, 14:38 | Сообщение № 9
Группа: Админы
Ранг: Местный житель
Сообщений: 16880
Репутация: 6593 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
А, так Вам часы нужно на чч, а ч?
уберите одну h в строке
[vba]
Код
.Offset(, 1) = CDate(Format(Now(), "hh:mm DD.MM.YY"))
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеА, так Вам часы нужно на чч, а ч?
уберите одну h в строке
[vba]
Код
.Offset(, 1) = CDate(Format(Now(), "hh:mm DD.MM.YY"))
[/vba]

Автор - _Boroda_
Дата добавления - 29.08.2017 в 14:38
DrMini Дата: Вторник, 29.08.2017, 14:39 | Сообщение № 10
Группа: Модераторы
Ранг: Старожил
Сообщений: 2036
Репутация: 316 ±
Замечаний: 0% ±

Excel LTSC 2024 RUS
Nic70y, Спасибо Вам ещё раз. Дома попробую. Но думаю заработает.
 
Ответить
СообщениеNic70y, Спасибо Вам ещё раз. Дома попробую. Но думаю заработает.

Автор - DrMini
Дата добавления - 29.08.2017 в 14:39
DrMini Дата: Вторник, 29.08.2017, 14:52 | Сообщение № 11
Группа: Модераторы
Ранг: Старожил
Сообщений: 2036
Репутация: 316 ±
Замечаний: 0% ±

Excel LTSC 2024 RUS
А, так Вам часы нужно

Нет. Надо год(ГГГГ).месяц(ММ).число(ДД). В Вашем примере число(ДД).месяц(ММ).год(ГГГГ).
 
Ответить
Сообщение
А, так Вам часы нужно

Нет. Надо год(ГГГГ).месяц(ММ).число(ДД). В Вашем примере число(ДД).месяц(ММ).год(ГГГГ).

Автор - DrMini
Дата добавления - 29.08.2017 в 14:52
_Boroda_ Дата: Вторник, 29.08.2017, 14:57 | Сообщение № 12
Группа: Админы
Ранг: Местный житель
Сообщений: 16880
Репутация: 6593 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
А, тада да


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеА, тада да

Автор - _Boroda_
Дата добавления - 29.08.2017 в 14:57
  • Страница 1 из 1
  • 1
Поиск:

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