Форум пользователей Visio http://visio.getbb.ru/ |
|
склеиваем PDF http://visio.getbb.ru/viewtopic.php?f=6&t=1394 |
Страница 1 из 1 |
Автор: | rws [ 05 дек 2018, 14:21 ] |
Заголовок сообщения: | склеиваем PDF |
есть 2 папки в которых некоторое количество pdf-файлов (не обязательно одинаковое). есть список какой файл с каким склеивать. как это сделать программно? |
Автор: | Robink [ 05 дек 2018, 14:40 ] |
Заголовок сообщения: | Re: склеиваем PDF |
viewtopic.php?f=18&t=508&start=20&st=0&sk=t&sd=a |
Автор: | rws [ 05 дек 2018, 14:50 ] |
Заголовок сообщения: | Re: склеиваем PDF |
Robink писал(а): http://visio.getbb.ru/viewtopic.php?f=18&t=508&start=20&st=0&sk=t&sd=a а можно это сделать с помощью макроса в exсel? чтоб сразу использовать списки с именами файлов |
Автор: | Тот самый… [ 05 дек 2018, 15:08 ] |
Заголовок сообщения: | Re: склеиваем PDF |
rws писал(а): а можно это сделать с помощью макроса в exсel? чтоб сразу использовать списки с именами файлов в принципе тут не важно из какого приложения запускать этот код!основной модуль остается без изменений. Robink в сообщении #4362 писал(а): Код: Option Explicit Declare Function OpenProcess Lib "kernel32" _ (ByVal dwDesiredAccess As Long, _ ByVal bInheritHandle As Long, _ ByVal dwProcessId As Long) As Long Declare Function GetExitCodeProcess Lib "kernel32" _ (ByVal hProcess As Long, _ lpExitCode As Long) As Long Public Const PROCESS_QUERY_INFORMATION = &H400 Public Const STILL_ACTIVE = &H103 Public Sub ShellAndWait(ByVal PathName As String, Optional WindowState) Dim hProg As Long Dim hProcess As Long, ExitCode As Long 'fill in the missing parameter and execute the program If IsMissing(WindowState) Then WindowState = 1 hProg = Shell(PathName, WindowState) 'hProg is a "process ID under Win32. To get the process handle: hProcess = OpenProcess(PROCESS_QUERY_INFORMATION, False, hProg) Do 'populate Exitcode variable GetExitCodeProcess hProcess, ExitCode DoEvents Loop While ExitCode = STILL_ACTIVE End Sub Код: Sub MergePDF() PS количество перебираемых строк (от 1 до 10), путь к экзешнику GhostScript (C:\Program Files\gs\gs9.10\bin\gswin64.exe) и путь к итоговому файлу (C:\31\out.pdf) могут/скорее всего будут отличаться !
' в переменной s будут храниться пути к документам, значения вытягиваются из ячеек в первом столбце Dim s As String s = "" For i = 1 To 10 s = s & Cells(i, 1) & " " Next ShellAndWait "C:\Program Files\gs\gs9.10\bin\gswin64.exe -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=C:\31\out.pdf " & s, vbHide End Sub |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |