Всё, что можно сделать менюшечками-кнопочками в ворде, автоматизируется через VBA, поскольку Word по сути оболочка, дёргает методы тех же COM-объектов, что доступны и в VBA.11.12.05 16:02 Число просмотров: 3287 Автор: HandleX <Александр М.> Статус: The Elderman
Возможно ли чем нибудь пакетно копировать картинки в ворд (причем одно изображение - один doc'овский файл) и уменьшать их там до определенного размера?
Можно, и довольно просто11.12.05 18:20 Автор: ;-) Статус: Незарегистрированный пользователь
1) Начни в Word'е запись макроса.
2) Вручную вставь картинку в документ, задай ей размер, сохрани и закрой документ.
3) Останови запись макроса. Word сделает 90% работы - сгенерирует макрос на VBA для тех действий, что ты проделал вручную.
4) Осталось только просмотреть и немного подправить макрос, чтобы обработать им группу картинок - например добавить в него FindFirst/FindNext для *.jpg
Спасибо за идею. Вот что в итоге получилось22.12.05 13:55 Автор: Stuff <Павел> Статус: Member
Option Explicit
'Папка в которой всё это безобразие надо делать:
Private Const TARGET_FOLDER As String = "d:\documents\"
'Маска поиска. Не советую делать .
Private Const SEARCH_CINTERIA As String = "*.jpg"
Sub Jpg2DocAll()
Dim bstFile As String
Dim clsDoc As Word.Document
Dim bstFullName As String
bstFile = Dir(TARGET_FOLDER & SEARCH_CINTERIA, vbNormal)
Do While bstFile <> vbNullString
bstFullName = TARGET_FOLDER & bstFile
Set clsDoc = Application.Documents.Add
With clsDoc
.Range.InlineShapes.AddPicture FileName:=bstFullName, _
LinkToFile:=False, _
SaveWithDocument:=True
.SaveAs FileName:=Replace$(bstFullName, ".jpg", ".doc"), _
AddToRecentFiles:=False
.Close True
End With
Set clsDoc = Nothing
bstFile = Dir()
Loop
End Sub
---
Думаю VBA должно помочь07.12.05 13:22 Автор: amirul <Serge> Статус: The Elderman
> Возможно ли чем нибудь пакетно копировать картинки в ворд > (причем одно изображение - один doc'овский файл) и > уменьшать их там до определенного размера?
Только не спрашивай как :-)
Я в VBA не разбираюсь, знаю только что именно для автоматизации рутины (пакетная обработка из этого разряда) он и предназначен
По-мойму VBA здесь бессилен, или просто я в нем ничего не понимаю?11.12.05 13:24 Автор: Stuff <Павел> Статус: Member
Всё, что можно сделать менюшечками-кнопочками в ворде, автоматизируется через VBA, поскольку Word по сути оболочка, дёргает методы тех же COM-объектов, что доступны и в VBA.11.12.05 16:02 Автор: HandleX <Александр М.> Статус: The Elderman