0
адинэсниг1
08.07.13
✎
15:36
|
Всего мнений: 0
onprint = поле ввода.значение;
ТекстМакроса = "Sub VBAL1()
| Application.PrintOut FileName:="""", Range:=wdPrintAllDocument, Item:= _
| wdPrintDocumentContent, Copies:=1, Pages:=???, PageType:=wdPrintAllPages, _
| ManualDuplexPrint:=False, Collate:=True, Background:=True, PrintToFile:= _
| False, PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
| PrintZoomPaperHeight:=0
| End Sub";
Word = Новый COMОбъект("Word.Application");
Word.Documents.Open("d:/1.docx");
Word.Application.Visible=0;
VB = Word.VBE.ActiveVBProject.VBComponents;
Cnt = VB.Count();
VB.Add(1);
VB.Item(Cnt+1).CodeModule.InsertLines(1,ТекстМакроса);
Word.Application.Run("VBAL1");
автор, иди учись программир
Как передать значание поля в параметр Pages?
пробывал Pages:="+onprint+",
Pages:="""+onprint+""",
Pages:="+символ(34)+onprint+символ(34)+".
Во всех случаях печатает все страницы, невзирая на занчанеие.
ps. пробывал печатать и без макроса, не взлетает.
примерно так: msword.printout(,,,,,,,,onprint,)
|
|