Другие языки программирования и технологии

Как создать скрипт замены строки для excel? Строка должна заменяться каждый день в час ночи в файле.

Игорь Зуев
Игорь Зуев
692
Set xl = CreateObject("Excel.Application")
Set wb = xl.Workbooks.Open("d:\1.xls")
wb.Worksheets("Лист1").Cells(1,1).Value = Now
wb.Save

Скопируйте и вставьте это в блокнот, задайте вместо d:\1.xls свой файл, вместо лист1 свой лист и вместо (1,1) свою ячейку (можно вместо номера столбца и строки писать как в Excel н-р Cells("A1").Value = "Тест". Вместо Now - что там хотите - у меня пишется сейчас время текущее. cохраните с расширением vbs, поставьте в планировщик задач на час ночи с командой wscript.exe d:\1.vbs . Вместо d:\1.vbs впишите имя и путь к файлу каким Вы его задали при сохранении в блокноте.

100% работает ток что проверил. Если нужно будет подробнее - пишите на почту.
А. В.
А. В.
84 764
Лучший ответ
ну если только вбашный макрос который будет запускатся при открытие данного файла и на исполнение открытие в расписание. А не проще ли текстовым обойтись?
Ильдар Амиров
Ильдар Амиров
35 594
Создается впечатление, из вопроса, что компьютер не выключается вовсе.
Если так, то вам надо сделать таймер, который с периодичностью раз в час проверял системное время и по прошествии часа ночи заменял текст в ячейке. Вариант, мягко говоря, не очень хороший. Постоянная работа таймера может мешать выполнению каких-нибудь программ, загруженных в то же время. Процесс закрытия файла тоже не простой, если таймер не остановить вручную. Событие "перед закрытием книги" или "пред сохранением книги" таймер останавливает некорректно, поэтому часто проявляется глюк, который файл опять открывает.
Если компьютер отключается, то можно сделать проверку времени по событию “Открытия файла”. Например при первом открытии файла после 1 часа ночи строка меняется, последующие запуски в эти сутки замену делать не будут.
Leon C.
Leon C.
27 337

Похожие вопросы