Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 05.02.2010, 13:36   #1
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 224
Репутация: 19
Злость =СЕГОДНЯ()

Приветствую всех присутствующих на форуме.
Все записи в таблице Exscel начинаются с ручного ввода даты
(впоследствии по дате выбирается нужная информация )
Попытка автоматизировать запись даты через =СЕГОДНЯ() - приводит к тому, что во вчерашних записях стоит сегодняшнее число.

Как объяснить машине чтобы она запоминала значение функции =СЕГОДНЯ() ?
Спасибо
0mega вне форума   Ответить с цитированием
Старый 05.02.2010, 13:47   #2
The_Prist
Профессионал
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Адрес: Москва
Сообщений: 1,088
Репутация: 156
По умолчанию

Может макросом при открытии книги вносить текущую дату, при условии, что целевая ячейка пустая? Если не пустая - не изменять.
__________________
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума   Ответить с цитированием
Старый 05.02.2010, 13:55   #3
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 224
Репутация: 19
По умолчанию

Как создать условие записи даты - на это у меня ума хватит.
Мне бы еще "запомнить " вчерашнюю дату...
Я с макросами на "Вы" и через "Пожалуйста".
нельзя ли обойтись чисто Exscеl-евскими функциями ?
P.S.
Если будут какие-то предложения в файлах - просьба файлы выкладывать в ZIPe

Последний раз редактировалось 0mega; 05.02.2010 в 13:58.
0mega вне форума   Ответить с цитированием
Старый 05.02.2010, 14:56   #4
KOSTIK1
Форумчанин
 
Аватар для KOSTIK1
 
Регистрация: 06.10.2009
Адрес: Германия
Сообщений: 193
Репутация: 62
По умолчанию

Попробуйте это в код листа.
Код:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
    On Error Resume Next: Application.EnableEvents = False
    Select Case Target.Column
    Case 1 '1  это первый столбец
        Target.EntireRow.Cells(2) = CDate(Format(Now, "DD.MM.YYYY"))  '(2)это второй столбец куда вносится дата
        End Select
    Application.EnableEvents = True
End Sub

После изменений в столбце А вносится дата изменения(то есть сегодня) в столбец В. Подогнать под себя можете изменяя номера столбцов.
P.S. Установив оба значения одинаковыми можно получить дату после двойного клика и ЭНТЕР в нужную ячейку.
Вложения
Тип файла: zip СЕГОДНЯ.zip (8.5 Кб, 12 просмотров)
__________________
С Уважением, Костик

Последний раз редактировалось KOSTIK1; 05.02.2010 в 17:21. Причина: Пример
KOSTIK1 вне форума   Ответить с цитированием
Старый 20.07.2013, 11:37   #5
DiemonStar
Профессионал
 
Регистрация: 08.02.2012
Адрес: Русь-матушка
Сообщений: 2,180
Репутация: 491
По умолчанию

Можно и формулой, но нужно отключить проверку циклических ссылок:

Код:

=ЕСЛИ(ЕПУСТО(B3);СЕГОДНЯ();ЯЧЕЙКА("содержимое"; A3))

для ячейки A3. Дата будет меняться пока в соседней ячейке B3 не будет значения

Аналогично можно сделать, чтобы текущая дата была только в следующей ячейке:

Код:

=ЕСЛИ(B2 <> ""; ЕСЛИ(B3=""; СЕГОДНЯ();ЯЧЕЙКА("содержимое";A3));"")

__________________
Правильно поставленная задача - три четверти решения.

Последний раз редактировалось DiemonStar; 20.07.2013 в 11:44.
DiemonStar вне форума   Ответить с цитированием
Старый 20.07.2013, 12:42   #6
DV68
Форумчанин
 
Регистрация: 05.08.2009
Адрес: г. Хабаровск
Сообщений: 465
Репутация: 176
По умолчанию

А можно просто выделить необходимое количество ячеек
Нажать Ctrl+Shift+4 или Ctrl+Ж
После этого нажать Ctrl+Enter
__________________
"Все следует делать настолько простым, насколько это возможно, но не проще." Альберт Эйнштейн
DV68 вне форума   Ответить с цитированием
Старый 20.07.2013, 13:16   #7
tpa
 
Регистрация: 13.07.2013
Сообщений: 9
Репутация: 10
По умолчанию Условное форматирование

Добрый день. Как в условном форматирование поменять цвет ячейки по истечению года, какую формулу задать?
Вложения
Тип файла: rar Книга1.rar (6.5 Кб, 2 просмотров)
tpa вне форума   Ответить с цитированием
Старый 20.07.2013, 13:53   #8
VictorM
Профессионал
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Адрес: Луганск
Сообщений: 2,055
Репутация: 274

icq: 1-702-732
skype: victor11129
По умолчанию

Цитата:
Условное форматирование
И при чем здесь Ваш вопрос?
текущая тема
Цитата:
=СЕГОДНЯ()
__________________
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума   Ответить с цитированием
Старый 20.07.2013, 15:02   #9
kuklp
Профессионал
 
Регистрация: 02.05.2010
Адрес: Украина, Днепропетровск.
Сообщений: 1,388
Репутация: 152

icq: 4190413
skype: pilipnik
По умолчанию

Цитата:
Сообщение от KOSTIK1 Посмотреть сообщение
Попробуйте это в код листа.
Код:

        Target.EntireRow.Cells(2) = CDate(Format(Now, "DD.MM.YYYY"))

KOSTIK1, а зачем так извращаться? Вы преобразовываете дату в строку, потом назад в дату. Да и Select там - слишком круто. Не проще:
Код:

if target.column=1 then Cells(Target.Row,2) = date

?
__________________
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728

Последний раз редактировалось kuklp; 20.07.2013 в 15:07.
kuklp вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Уровень значимости Assembler'а сегодня [Kaiser] Assembler 15 07.09.2007 09:05


12:50.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru