Страницы: 1
RSS
как привязать формулу к кнопке (или наоборот)
 
1, есть кнопка с макросом    
Range("A1").Select  
ActiveCell.FormulaR1C1 = "=TODAY()"  которая подставляет в А1 текущую дату.  
 
2, нужно сделать кнопку при нажатии на которую срабатывала бы формула А1-1. т,е текущая дата уменьшалась бы на один день назад, как к кнопке прилепить формулу =А1-1?  
 
спасибо
 
Sub Test()  
Range("A1") = Date - 1  
End Sub
 
я не понимаю, а почему дату назад считает только 1 раз, ведь число в А1 изменилось и при повторном нажатии должно еще уменьшится, а оно стоит ??
 
а файл не добавился :(
 
Потому, что Date это по сути СЕГОДНЯ()
 
Ваш файл удалил. Архивируйте такие файлы.  
P.S. Ведь для выяснения Вашего вопроса вообще достаточно файла с одной ячейкой :-). Зачем такую громадину выкладывать?
 
а просто формулу ,без макроса, нельзя прилепить к объекту?
 
*у меня файлы почему то не скачиваются, в связи с чем не уверен, что ответ в тему*  
 
Формулу можно "прилепить" к объекту, если эта формула может возвращать разные значения в зависимости от объекта.  
Т е если объект, скажем, цвет, то стандартные формулы с ним оперировать не могут.  
А вот если, к примеру, 1/0, то могут.  
Вид формулы, к примеру, такой:  
если(B1=1;A1-1;"вася")  
 
К примеру, кнопки/флажки элементарно привязываются к ячейкам стандартными средствами экселя и, если они привязаны, обращаясь к этой ячейкой через если() можно элементарно "привязать формулу к объекту".
 
Как то сумбурно получилось...  
В общем, вставьте, к примеру, флажок.  
В формате объекта установите связь с ячейкой B1.  
При "активном" флажке, B1=Истина, при "не активном" B1=Ложь  
 
Соответственно, формула может быть следующей Если(B1;A1-1;"значение если ложь")
 
{quote}{login=The_Prist}{date=06.08.2009 09:12}{thema=Re: }{post}{quote}{login=irez}{date=06.08.2009 07:13}{thema=}{post}я не понимаю, а почему дату назад считает только 1 раз, ведь число в А1 изменилось и при повторном нажатии должно еще уменьшится, а оно стоит ??{/post}{/quote}  
 
Так и пишите в макросе(без всяких там формул)  
Range("A1") = Range("A1")-1{/post}{/quote}  
 
вот и я это хотел сделать, но не знал как в макросе написать :)  
 
спасибо  
всем
Страницы: 1
Читают тему
Наверх