Страницы: 1
RSS
Изменить свойства книги excel
 
Добрый день, форумчане.Пытаюсь прописать свойства книги (те, что на вкладке "Подробно" - автор, кто сохранил, дата и время и т.д., но никогда с этим не сталкивался. Не могу разобраться. Прочитал посты на сайте, которые этому посвящены, в интернете посмотрел. Получается  изменить   только те, что в Описании, а те, что в Источнике, Содержании или Файл не меняются.Вставил уже функцию EducatedFool, но не знаю как адаптировать. Нужно изменить автора, кто сохранил, менежджера и компанию. Ткните носом, куда смотреть и что менять, очень нужно.
Файл во вложении.
Изменено: Эмир - 01.12.2013 23:25:19
Иногда только промахнувшись, понимаешь как ты попал.
 
Такой код тоже не изменяет свойства - Автор, кто сохранил, за исключением комментариев, название и предмет.
Может по этому коду кто-то комментарии даст???
Код
Dim st As String
Dim w As Workbook
Set w = Application.ActiveWorkbook
For Each property In w.BuiltinDocumentProperties 
On Error Resume Next ' чтобы не возникло ошибки, если с отображением свойств будут проблемы
    If property.Name = "Author" Then
     property.Value = "111"
    End If
    If property.Name = "LastAutor" Then
     property.Value = "222"
    End If
    If property.Name = "Manager" Then
     property.Value = "333"
    End If
Next property
   ' свойств у файла много, названия остальных можно взять из help'а
Изменено: Эмир - 01.12.2013 23:23:35
Иногда только промахнувшись, понимаешь как ты попал.
 
у меня данный код меняет.
автора и руководителя
Excel 2003
"LastAutor" -такого свойства нет
есть "Last author"
исправил эту опечатку - увидел изменение (вкладка Cтатистика, Автор изменений)
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
А мы об этих свойствах говорим или я что-то не понял? Эти не меняются.
Иногда только промахнувшись, понимаешь как ты попал.
 
Нашел вкладку статистика. Там тоже ничего не происходит.
Иногда только промахнувшись, понимаешь как ты попал.
 
у меня так
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Суть в том, что пользователь не сможет увидеть кто автор внутри файла. А мне надо чтобы при правом клике мышкой на файл в свойствах отображались все эти propertis во вкладке Подробно.
Иногда только промахнувшись, понимаешь как ты попал.
 
ikki, а вы можете мне свой файлик прислать, где вы добились такого результата???
Прошу вас, не сочтите за труд!
Иногда только промахнувшись, понимаешь как ты попал.
 
Цитата
А мне надо чтобы при правом клике мышкой на файл
А где собираетесь кликать?
 
отображает.
автора - так даже без щелчка, во всплывающей подсказке при наведении.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
файлик
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
смотрите только процедурку nnn во втором модуле.
остальное - мусор от решения других задачек (сорри).
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
У вас работает, я понял почему.
Спасибо большое.
Не подскажете еще один нюанс, при выходе с сохранением сохраняет данные пользователя, а не указанное в макросе свойство - Кем изменено? Можно побороть это?
Иногда только промахнувшись, понимаешь как ты попал.
 
Кстати, кем изменено - не хочет меняться никак! (по макросу это значение 222)
Иногда только промахнувшись, понимаешь как ты попал.
 
Эмир, сначала Вы хотели МЕНЯТЬ, а потом: "А мне надо чтобы при правом клике мышкой на файл в свойствах отображались все эти propertis".  Так Вам только посмотреть?
 
Юрий, их надо вначале менять. В этом я почти разобрался, кроме - Кем сохранено. Потом нужно при правом клике мышки на файл их видеть. Не скажете, почему данное свойство сохраняется под именем пользователя компьютера, не смотря на указание в макросе - менять? Потому что все это делается до сохранения книги, а при сохранении excel ставит в свойство Кем сохранено - активного системного пользователя. Вот меня и интересует, как это можно обойти???
Иногда только промахнувшись, понимаешь как ты попал.
 
Точного ответа не знаю, но, вроде, всё логично: сначала отработал макрос, а ПОЗЖЕ Excel своими силами "поправил".
А про считывание свойств можно посмотреть здесь
 
Спасибо, Юрий.
Это интересно, я уже это все смотрел и сохранил себе кое-что!!!
Иногда только промахнувшись, понимаешь как ты попал.
 
Можно так задать автора изменения:

Код
Sub ChangeSavedBy()
  Dim un As String
  With Application
    un = .UserName
    .UserName = "111"
    ActiveWorkbook.Save ' or Thisworkbook.Save
    .UserName = un
  End With
End Sub
 
 
Спасибо, Владимир.

А не подскажете, как объявить переменную property в сообщении ikki (файл во вложении city.xls) от 16:13.
Если кто-то может помочь еще буду всем признателен!
Спасибо.
Иногда только промахнувшись, понимаешь как ты попал.
 
Вот прилагаю файл с кодом ZVI, все равно не меняется свойство Last autor.
Может что-то не так делаю?
Иногда только промахнувшись, понимаешь как ты попал.
 
Код
Dim property As DocumentProperty
 
Спасибо всем. Поборол.
Отдельное спасибо ZVI.
Сначала сделал не правильно, теперь до конца понял реализацию его идеи.
Файл выкладываю. Тему можно закрыть.
Изменено: Эмир - 01.12.2013 23:52:48
Иногда только промахнувшись, понимаешь как ты попал.
 
tester, спасибо за объявление переменной. Туплю я что-то.
Иногда только промахнувшись, понимаешь как ты попал.
 
Рад, что помогло :)
Изменено: ZVI - 02.12.2013 00:13:25
Страницы: 1
Читают тему
Наверх