powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите со скриптом!
10 сообщений из 10, страница 1 из 1
Помогите со скриптом!
    #38464896
VVA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VVA
Гость
Доброго всем времени суток!
Помогите плиз со скриптом справиться, на данный момент есть такой скрипт:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Dim FSO, file
Set FSO=CreateObject("Scripting.FileSystemObject")
Set file = FSO.OpenTextFile("c:\SCRIPTS\VBSLog.txt", 8, True)
file.WriteLine(Date & " " & Time & " Начало обработки.")
 Set objExcel = CreateObject("Excel.Application") 
 objExcel.Visible = True 
 objExcel.DisplayAlerts=0 
 Set objWorkbook = objExcel.Workbooks.Open _ 
 ("O:\00 СТАТИСТИКА\01 Продажи по контрагентам (неделя_все дни).xls") 
file.WriteLine(Date & " " & Time & " Открыли файл:" & "O:\00 СТАТИСТИКА\01 Продажи по контрагентам (неделя_все дни).xls")
 objWorkbook.Sheets("Продажи по контрагентам ($)").Select 
file.WriteLine(Date & " " & Time & " Активировали лист:" & "Продажи по контрагентам ($)")
 objWorkbook.ActiveSheet.PivotTables("СводнаяТаблица1").PivotCache.Refresh 
 objWorkbook.ActiveSheet.Cells(1,1).Value="Обновлено 14.11.13 00:14:16 01.01.11 - 13.11.13, Профиль: 01 Динамика текущ.продаж (по дням); Набор данных No:1" 
file.WriteLine(Date & " " & Time & " Обновили сводную таблицу:" & "Обновлено 14.11.13 00:14:16 01.01.11 - 13.11.13, Профиль: 01 Динамика текущ.продаж (по дням); Набор данных No:1")
 objExcel.Save 
 objExcel.DisplayAlerts=1 
 objExcel.Quit 
file.WriteLine(Date & " " & Time & " Сохранили и закрыли эксель.")
file.WriteBlankLines(1)
file.Close



Вбска запускается ночью и замечательно работает, но только в том случае если эксель файл ни кем не занят. А вот если ктонить из босов забыл вечером его закрыть то файл не сохраняется(

Все мои знания вбс собственно в этом файле( Я так предполагаю что можно какнить использовать "Try...Catch...Finally" только не понимаю как либо как то проверять доступен ли эсель файл для записи.
В обоих случаях мне нужно попытаться сохранить текущий файл и если не получается то сохранить его с другим именем.
Буду благодарен за любые варианты!
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38464920
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты должен записывать эксельный файл там, где ни босс, ни чёрт до него не доюерётся даже имя посмотреть. Ибо нефиг. Соответственно никакой проблемы не возникнет.
После того, как файл создан, просто копируй его в то место, где всякие боссы и прочая фигня его будут смотреть. И добавляй в имя файла дату. А перед этим пробуй удалить все имеющиеся .XLS - вчерашний, позавчерашний и пр., которые были раньше заблочены, а сейчас свободны, будут удалены.
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38464930
VVA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VVA
Гость
Akina, если файл занят то и удалить его не получится!
Я то же думал о том что бы сначала скопировать файл на сервак там с ним поработать а потом переместить обратно, но есть вероятность что они там копиться будут, а удалять там ниче нельзя, поэтому и сижу марочусь(((
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38465003
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VVAAkina, если файл занят то и удалить его не получится!Да и хрен с им, пусть лежит, завтра удалишь, когда босс соизволит закрыть ёксель.
VVAсначала скопировать файл на сервак там с ним поработать а потом переместить обратно
Повторяю - оригинал лежит у тебя, и никакие блин боссы даже знать не должны, где он лежит и вообще что он там где-то лежит, и доступа туда, где он лежит, у них нет. Обойдутся. Им ты выкладываешь копию обработанного файла - пусть играются. А ну как чё попортят? боссы - они такие...
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38465311
VVA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VVA
Гость
Теоретически вариант с копированием не плох.
Но не совсем подходит под мою конкретную задачу...

Появился такой вопрос, возможно ли при открытии файла эксель узнать открыт ли он кем нить еще?
т.е. в идиале мне нужно что бы скрипт в любом случае получал доступ на запись конкретного файла.
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38465336
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VVAвозможно ли при открытии файла эксель узнать открыт ли он кем нить еще?То, что сам Эксель это прекрасно определяет - для тебя недостаточно? возможно, возможно...
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38465376
VVA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VVA
Гость
AkinaТо, что сам Эксель это прекрасно определяет - для тебя недостаточно?

А как это узнать? и к чему относится Akinaвозможно, возможно... ?
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38465528
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VVAкак это узнать?А чё узнавать? али ни разу не видел месс типа "файл редактируется юзером XXX с рабстанции YYY"?

VVAи к чему относится Akinaвозможно, возможно... ?
К тому, что узнать - возможно. Ну или просто можно.
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38466198
VVA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VVA
Гость
Сообщение лично не видел, и уж точно не знаю как это отловить в коде скрипта! (в первом сообщении написал, что все мои знания ВБС в этом скрипте, я раньше ВБСом не пользовался, стаж ВБС два дня)
...
Рейтинг: 0 / 0
Помогите со скриптом!
    #38466248
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VVAвозможно ли при открытии файла эксель узнать открыт ли он кем нить еще?

как вариант, так можно
Код: vbnet
1.
2.
3.
4.
    Dim WB ' As Excel.Workbook
    
    Set WB = GetObject("путь и имя файла")
    MsgBox WB.Application.UserControl


вот если файл УЖЕ открыт пользователем, то UserControl выдаст True
иначе False

только, с такой "проверкой", прийдётся "переподымать" Excel.Application для каждого файла, что, конечно, конкретно замедлит процесс в целом ...
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите со скриптом!
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]