Masz foldery z raportami PDF, wyciągami bankowymi lub zgłoszeniami regulacyjnymi z tabelami zamkniętymi w środku — i potrzebujesz tych liczb w Excelu, aby je sortować, filtrować i uruchamiać formuły. Kopiuj-wklej z PDF rzadko utrzymuje wyrównanie kolumn, a ręczne formatowanie setek plików to nie praca, to kara. Total PDF Converter X wyodrębnia tabele z plików PDF do skoroszytów XLS z wiersza poleceń, wsadowo, bez GUI i bez wymogu instalacji Microsoft Excel. Zainstaluj go na serwerze Windows, wywołaj ze skryptu lub przez ActiveX i pozwól mu działać bez nadzoru.
*.pdf), a konwerter przetworzy każdy pasujący plik w jednym przebiegu-EachPageSeparate, aby zapisać każdą stronę PDF na osobnym arkuszu, lub połącz wszystkie strony w jeden
(30 dni, bez e-maila)
(licencja serwerowa, wieczysta)
Windows 7/8/10/11 • Server 2008/2012/2016/2019/2022
PDF to format dokumentu w formie końcowej. Strona jest stała, układ zamrożony, a dane na niej mają być czytane, drukowane lub archiwizowane — nie przeliczane. Wyciąg bankowy w PDF pokazuje saldo; nie pozwala podkręcić założenia odsetkowego i obserwować, jak aktualizuje się kolumna. Tabele wewnątrz PDF wyglądają jak tabele, ale pod spodem to tylko tekst umieszczony we współrzędnych na stronie.
XLS to format roboczy. Każda liczba siedzi w komórce z wierszem, kolumną i typem danych. Możesz sortować, filtrować, robić tabele przestawne, dodawać formuły, rysować wykresy i podawać wynik do dalszego modelu. Gdy dane tabelaryczne przychodzą jako PDF, a kolejnym krokiem jest analiza, dane muszą najpierw stać się XLS.
| XLS | ||
|---|---|---|
| Cel | Wyjście końcowe do czytania i druku | Format roboczy do analizy i przeliczania |
| Komórki i formuły | Brak — tekst umieszczony na stronie | Natywne komórki, formuły, odwołania, wykresy |
| Sortowanie i filtrowanie | Nieobsługiwane | Wbudowane |
| Tabele przestawne | Niemożliwe | Natywna funkcja Excela |
| Wierność kopiuj-wklej | Kolumny często zlewają się w jedną | Kolumny pozostają oddzielne |
| Odbiorcy | Czytelnicy, archiwa, regulatorzy | Analitycy, księgowi, kontrolerzy |
Pobierz instalator z linku powyżej i uruchom go na serwerze lub stacji roboczej Windows. Instalacja trwa mniej niż minutę. Nie wymaga instalacji przeglądarki ani Microsoft Excel — konwerter parsuje warstwę tekstu PDF własnym silnikiem i zapisuje plik XLS bezpośrednio.
Otwórz cmd.exe lub PowerShell. Plik wykonywalny konwertera to PDFConverter.exe, znajdujący się w folderze instalacyjnym (zwykle C:\Program Files\CoolUtils\TotalPDFConverterX\). Dodaj go do systemowej zmiennej PATH lub używaj pełnej ścieżki w poleceniach.
Najprostsze polecenie konwertuje wszystkie pliki PDF w folderze do XLS:
PDFConverter.exe C:\Reports\*.pdf C:\Output\ -c XLS
Przetwarza każdy plik .pdf w folderze C:\Reports\ i zapisuje wynikowe skoroszyty XLS w C:\Output\. Każdy PDF tworzy jeden plik XLS o tej samej nazwie bazowej.
Kontroluj wyjście skoroszytu za pomocą dodatkowych flag:
PDFConverter.exe C:\Reports\*.pdf C:\Output\ -c XLS -EachPageSeparate -log C:\Logs\pdf2xls.log
-EachPageSeparate — umieść każdą stronę PDF na osobnym arkuszu wewnątrz skoroszytu-log C:\Logs\pdf2xls.log — zapisz dziennik konwersji do weryfikacjiZapisz polecenie w pliku .bat i zaplanuj je za pomocą Harmonogramu zadań systemu Windows:
@echo off "C:\Program Files\CoolUtils\TotalPDFConverterX\PDFConverter.exe" C:\Incoming\*.pdf C:\Archive\XLS\ -c XLS -EachPageSeparate -log C:\Logs\pdf2xls.log
Uruchamia ekstrakcję każdej nocy (lub z dowolną częstotliwością) i zapisuje plik dziennika, aby można było zweryfikować wyniki.
Total PDF Converter X zawiera pełny interfejs ActiveX. Możesz wywoływać konwerter z dowolnego środowiska zgodnego z COM — .NET, VBScript, PHP, Python, Ruby lub ASP. Pozwala to osadzić ekstrakcję PDF do XLS we własnej aplikacji webowej, portalu intranetowym lub procesie księgowym bez uruchamiania osobnego procesu z wiersza poleceń.
Przykład (C#/.NET):
PDFConverterX Cnv = new PDFConverterX();
Cnv.Convert("C:\\Reports\\statement.pdf", "C:\\Output\\statement.xls", "-c XLS -EachPageSeparate -log c:\\Logs\\pdf.log");
Przykład (PHP):
$c = new COM("PDFConverter.PDFConverterX");
$c->convert("C:\\Reports\\statement.pdf", "C:\\Output\\statement.xls", "-c XLS -EachPageSeparate -log c:\\Logs\\pdf.log");
To samo wywołanie działa z ASP.NET, VBScript, Python, Ruby, Perl i JavaScript (Windows Script Host). Twoja aplikacja webowa może przyjmować przesyłane pliki PDF i zwracać użytkownikowi skoroszyty Excela w czasie rzeczywistym.
| Funkcja | Konwertery online | Total PDF Converter X |
|---|---|---|
| Przetwarzanie wsadowe | Jeden plik naraz | Nieograniczona liczba plików na partię |
| Prywatność plików | Wyciągi wysyłane na serwer zewnętrzny | Pliki nigdy nie opuszczają Twojego komputera |
| Wyrównanie kolumn | Często zlewa kolumny w jedną komórkę | Wykrywa granice kolumn z warstwy tekstu |
| Skoroszyty wielostronicowe | Pojedynczy arkusz, bez kontroli | -EachPageSeparate dla jednego arkusza na stronę |
| Automatyzacja | Tylko ręcznie | Wiersz poleceń, .bat, Harmonogram zadań, ActiveX |
| Wdrożenie na serwerze | Niemożliwe | Zaprojektowany dla serwerów, bez GUI |
| Wymaga zainstalowanego Excela | nd. | Nie |
| Wymaga internetu | Tak | Nie |
Konwerter zapisuje prawidłowe pliki XLS bezpośrednio. Nie potrzebujesz Microsoft Office, LibreOffice ani żadnego programu arkuszowego zainstalowanego na serwerze. Pozwala to uniknąć kosztów licencji i znanej niestabilności automatyzacji Excela w scenariuszach bez nadzoru.
Total PDF Converter X jest zaprojektowany do pracy bez nadzoru. Żadnych okien GUI, okien dialogowych ani monitów potwierdzenia. Działa cicho z wiersza poleceń lub jako część usługi — dokładnie to, czego potrzebuje serwer produkcyjny.
Wyjście XLS zawiera prawdziwe komórki z prawdziwymi typami danych. Liczby są numeryczne, kolumny pozostają w kolumnach, a funkcje Excela — sortowanie, filtrowanie, formuły, tabele przestawne, wykresy — działają natychmiast. To nie jest tekst zrzucony do jednej komórki z separatorami — to prawdziwy skoroszyt.
To samo narzędzie wiersza poleceń konwertuje PDF do DOC, XLSX, CSV, HTML, TIFF, JPEG, TXT i wielu innych formatów. Jedna instalacja pokrywa wszystkie potrzeby ekstrakcji PDF. Zmień -c XLS na -c CSV, a otrzymasz wyjście CSV z tymi samymi funkcjami wsadowymi i automatyzacji. Pamiętaj, że konwerter działa na PDF-ach tekstowych — skanowane PDF-y zawierające tylko obrazy wymagają OCR po stronie wcześniejszej, którego ten produkt nie zawiera.
(30 dni, bez e-maila i karty kredytowej)
(licencja serwerowa, wieczysta)
Windows 7/8/10/11 • Server 2008/2012/2016/2019/2022
PDFConverter.exe C:\Reports\*.pdf C:\Output\ -c XLS. Konwertuje to każdy plik PDF w folderze źródłowym do XLS. Dodaj -EachPageSeparate, aby umieścić każdą stronę PDF na osobnym arkuszu, lub -log, aby zapisać dziennik weryfikacji.-EachPageSeparate, a konwerter utworzy skoroszyt wieloarkuszowy z jednym arkuszem na stronę PDF. Bez tej flagi wszystkie strony są łączone w jeden arkusz. Przydatne dla miesięcznych wyciągów, gdzie każda strona dotyczy innego konta lub okresu.
string src = @"C:\test\Source.pdf";
string dest = @"C:\test\Dest.docx";
var cnv = new PDFConverterX();
cnv.Convert(src, dest, "-cDOC -log c:\\test\\PDF.log");
if (!string.IsNullOrEmpty(cnv.ErrorMessage))
throw new Exception(cnv.ErrorMessage);
public static class Function1
{
[FunctionName("Function1")]
public static async Task Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
StringBuilder sbLogs = new StringBuilder();
sbLogs.AppendLine("started...");
try
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
var assemblyDirectoryPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
assemblyDirectoryPath = assemblyDirectoryPath.Substring(0, assemblyDirectoryPath.Length - 4);
var executablePath = $@"{assemblyDirectoryPath}\Converter\PDFConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.pdf";
var outPath = Path.GetTempFileName() + ".docx";
startInfo.FileName = executablePath;
if (File.Exists(outPath))
{
File.Delete(outPath);
}
if (File.Exists(executablePath) && File.Exists(srcPath))
{
sbLogs.AppendLine("files exists...");
}
else
sbLogs.AppendLine("EXE & source files NOT exists...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $"\"{srcPath}\" \"{outPath}\" -cDOC";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
sbLogs.AppendLine("Conversion complete.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("PDFConverter.PDFConverterX")
C.Convert "c:\test\source.pdf", "c:\test\dest.docx", "-cDOC -log c:\test\PDF.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("PDFConverter.PDFConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=test.docx"
Response.BinaryWrite C.ConvertToStream("C:\www\ASP\Source.pdf", "C:\www\ASP", "-cDOC -log c:\html.log")
set C = nothing
$src="C:\\test\\test.pdf";
$dest="C:\\test\\test.docx";
if (file_exists($dest)) unlink($dest);
$c= new COM("PDFConverter.PDFConverterX");
$c->convert($src,$dest, "-cDOC -log c:\\test\\PDF.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('PDFConverter.PDFConverterX')
src = "C:\\test\\test.pdf"
dest = "C:\\test\\test.docx"
c.convert(src, dest, "-cDOC -log c:\\test\\PDF.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("PDFConverter.PDFConverterX")
src = "C:\\test\\test.pdf"
dest = "C:\\test\\test.docx"
c.convert(src, dest, "-cDOC -log c:\\test\\PDF.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('PDFConverter.PDFConverterX');
c.Convert('c:\test\source.pdf', 'c:\test\dest.docx', '-cDOC -log c:\test\PDF.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("PDFConverter.PDFConverterX");
c.Convert("C:\\test\\source.pdf", "C:\\test\\dest.docx", "-cDOC");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.pdf"; my $dest = "C:\\test\\test.docx"; my $c = CreateObject Win32::OLE 'PDFConverter.PDFConverterX'; $c->convert($src, $dest, "-cDOC -log c:\\test\\PDF.log"); print $c->ErrorMessage if -e $dest;
Pobierz wersję próbną i konwertuj pliki w kilka minut.
Nie jest wymagana karta kredytowa ani e-mail.