لديك مجلدات من ملفات DOCX تحتوي على بيانات جدولية داخل جداول Word — نماذج مالية، ملاحق العقود، جداول التقديمات التنظيمية، قوائم تدقيق. الأرقام محبوسة داخل مستند نثري، حيث لا يمكنك الفرز أو التصفية أو الجمع أو تغذيتها في نظام تابع. إعادة كتابة الجداول في Excel يدويًا بطيئة وعرضة للأخطاء. Total Doc Converter X يُحوّل ملفات DOCX إلى XLS من سطر الأوامر، دفعةً، بدون واجهة رسومية وبدون الحاجة إلى تثبيت Microsoft Office. ثبّته على خادم Windows، استدعِه من سكربت أو عبر ActiveX، ودعه يعمل دون إشراف.
*.docx) وسيعالج المحوّل كل الملفات المطابقة في تشغيلة واحدة
(30 يومًا، بدون بريد إلكتروني)
(ترخيص خادم، دائم)
Windows 7/8/10/11 • Server 2008/2012/2016/2019/2022
DOCX هو تنسيق مستند Word مبني للنثر. الجداول داخل DOCX قطع بصرية — صفوف وخلايا مصمّمة للقراءة، وليس للحساب. لا يوجد محرّك صيغ، ولا فرز، ولا تصفية، ولا رسم بياني. جدول مالي من 200 صف داخل DOCX هو في الأساس صورة ثابتة من الأرقام، حتى عندما تحتوي الخلايا على أرقام حقيقية.
XLS هو تنسيق Microsoft Excel المستخدَم في كل مكان حيث تحتاج الأرقام إلى التحليل. تحمل الخلايا قيمًا بأنواع تشارك في الصيغ والجداول المحورية والتحقق من البيانات. تتصل ملفات XLS بأدوات BI وأنظمة المحاسبة واستيرادات ERP وPower Query. حين تعيش البيانات الجدولية داخل مستند Word وتحتاج إلى الحساب أو الاستيراد، يجب أن تصبح XLS أولًا.
| DOCX | XLS | |
|---|---|---|
| الغرض | نثر، عقود، تقارير | تحليل رقمي، نماذج، تغذيات بيانات |
| الخلايا | تخطيط بصري ثابت | قيم حيّة بأنواع وصيغ |
| الحسابات | لا توجد | SUM، VLOOKUP، الجداول المحورية، الرسوم البيانية |
| الفرز / التصفية | غير مدعوم | مدمج |
| التكامل التابع | إعادة كتابة يدوية | استيراد مباشر إلى ERP وBI وقواعد البيانات |
نزّل المُثبِّت من الرابط أعلاه وشغّله على خادم أو محطة عمل Windows. يستغرق التثبيت أقل من دقيقة. لا حاجة لتثبيت Microsoft Word أو Excel — يستخدم المحوّل محرّكه الخاص لقراءة جداول DOCX وكتابة ملفات XLS مباشرةً.
افتح cmd.exe أو PowerShell. الملف التنفيذي للمحوّل هو DOCConverter.exe، ويقع في مجلد التثبيت (عادةً C:\Program Files\CoolUtils\TotalDocConverterX\). أضفه إلى متغيّر PATH في النظام أو استخدم المسار الكامل في أوامرك.
أبسط أمر يُحوّل جميع ملفات DOCX في مجلد إلى XLS:
DOCConverter.exe C:\Reports\*.docx C:\Output\ -c XLS
يُعالج هذا كل ملف .docx في C:\Reports\ ويحفظ ملفات XLS الناتجة في C:\Output\. كل ملف DOCX يُنتج ملف XLS واحدًا بنفس الاسم الأساسي. تصبح الجداول داخل DOCX صفوفًا وأعمدة في ورقة العمل.
تحكّم في إخراج XLS بعلامات إضافية:
DOCConverter.exe C:\Reports\*.docx C:\Output\ -c XLS -SheetName Data -log C:\Logs\docx2xls.log
-c XLS — التنسيق المستهدف (استخدم -c XLSX لتنسيق Excel الأحدث)-SheetName Data — تسمية ورقة العمل التي تحمل الجداول المُستخرجة-log C:\Logs\docx2xls.log — كتابة سجل تحويل للتحقق-deleteSrc — إزالة الملفات المصدرية بعد التحويل الناجح (استخدم بحذر)احفظ أمرك في ملف .bat وجدوِله باستخدام Windows Task Scheduler:
@echo off "C:\Program Files\CoolUtils\TotalDocConverterX\DOCConverter.exe" C:\Incoming\*.docx C:\Archive\XLS\ -c XLS -SheetName Data -log C:\Logs\docx2xls.log
يُشغّل هذا التحويل كل ليلة (أو بأي فاصل زمني تحدّده) ويكتب ملف سجل لكي تتمكّن من التحقق من النتائج.
يتضمّن Total Doc Converter X واجهة ActiveX كاملة. يمكنك استدعاء المحوّل من أي بيئة متوافقة مع COM — .NET أو VBScript أو PHP أو Python أو Ruby أو ASP. يتيح لك ذلك دمج تحويل DOCX إلى XLS في تطبيق الويب الخاص بك أو بوابة الإنترانت أو سير عمل المستندات دون اللجوء إلى عملية سطر أوامر خارجية.
مثال (C#/.NET):
DOCConverterX Cnv = new DOCConverterX();
Cnv.Convert("C:\\Reports\\budget.docx", "C:\\Output\\budget.xls", "-c XLS -log c:\\Logs\\doc.log");
مثال (PHP):
$c = new COM("DOCConverter.DOCConverterX");
$c->convert("C:\\Reports\\budget.docx", "C:\\Output\\budget.xls", "-c XLS -log c:\\Logs\\doc.log");
يعمل نفس الاستدعاء من ASP.NET وVBScript وPython وRuby وPerl وJavaScript (Windows Script Host). يمكن لتطبيق الويب الخاص بك قبول ملفات DOCX المرفوعة وإعادة جداول XLS حيّة إلى المستخدم في الوقت الفعلي.
| الميزة | المحوّلات عبر الإنترنت | Total Doc Converter X |
|---|---|---|
| المعالجة الدفعية | ملف واحد في كل مرة | عدد غير محدود من الملفات لكل دفعة |
| خصوصية الملفات | تُرفع الملفات إلى خادم طرف ثالث | الملفات لا تغادر جهازك |
| استخراج الجداول | غالبًا ما يُلقي النص في عمود واحد | يربط جداول Word بخلايا حقيقية |
| دقّة الإخراج | تُخزَّن الأرقام كسلاسل نصية | خلايا رقمية، جاهزة للصيغ |
| الأتمتة | يدوي فقط | سطر الأوامر، .bat، Task Scheduler، ActiveX |
| النشر على الخادم | غير ممكن | مصمّم للخوادم، لا حاجة لواجهة رسومية |
| يتطلب تثبيت Office | غير قابل للتطبيق | لا |
| يتطلب إنترنت | نعم | لا |
يكتب المحوّل ملفات XLS صالحة مباشرةً. لست بحاجة إلى تثبيت Microsoft Word أو Excel أو أي حزمة Office على الخادم. يتجنّب ذلك تكاليف الترخيص وعدم الاستقرار المعروف لأتمتة Office في سيناريوهات غير مُشرف عليها.
صُمِّم Total Doc Converter X للاستخدام دون إشراف. لا نوافذ واجهة رسومية، لا مربعات حوار، لا مطالبات تأكيد. يعمل بصمت من سطر الأوامر أو كجزء من خدمة — تمامًا ما يحتاجه خادم الإنتاج.
تحتوي خلايا XLS الناتج على قيم رقمية حقيقية، وليس سلاسل نصية تبدو كأرقام. تعمل SUM وAVERAGE والجداول المحورية فورًا. يمكنك الفرز والتصفية وتغذية جدول البيانات في أي نظام يستهلك XLS، دون تمريرة تنظيف.
تُحوّل أداة سطر الأوامر نفسها DOCX إلى PDF وXLSX وHTML وTIFF وJPEG وRTF وTXT وأكثر. تثبيت واحد يغطي كل احتياجات تحويل DOCX لديك. غيّر -c XLS إلى -c PDF وستحصل على إخراج PDF بنفس مزايا الدفعات والأتمتة.
(30 يومًا، بدون بريد إلكتروني أو بطاقة ائتمان)
(ترخيص خادم، دائم)
Windows 7/8/10/11 • Server 2008/2012/2016/2019/2022
"ترسل شركاتنا التابعة حزم تقارير شهرية بصيغة DOCX مع جداول الميزانية مضمّنة داخل السرد. كنّا ننسخ كل جدول إلى Excel يدويًا. يعمل Total Doc Converter X كدفعة ليلية على خادم التوحيد ويُنتج ملفات XLS نُغذّي بها مباشرةً نموذج تقارير المجموعة. تبقى الأرقام رقمية، مما يعني أن صيغ SUMIF لدينا عملت من اليوم الأول دون تمريرة تنظيف."
Lukas Hoffmann Financial Controller, Industrial Holding
"احتجنا إلى استيعاب نحو 12,000 تقديم DOCX تاريخي إلى مستودع بيانات. الجداول داخلها كانت الشيء الوحيد الذي يهمّنا. ملف .bat واحد، عطلة نهاية أسبوع واحدة، وكان لدينا مجلد من ملفات XLS تُحمَّل بنظافة عبر Power Query. تتصرّف واجهة سطر الأوامر بشكل جيد في وضع غير الإشراف وأمسك السجل بحفنة المستندات المصدرية الفاسدة لكي نوجّهها للمراجعة اليدوية."
Priya Raman Data Engineer
"تصل تقديماتنا التنظيمية كمستندات Word بجداول إحصائية كثيفة. دمجنا واجهة ActiveX في بوابة الامتثال الداخلية لدينا بحيث يستطيع المراجعون سحب DOCX والحصول على XLS مقابل للتسوية. جودة العرض على الجداول متعدّدة الصفحات صلبة. يمكن أن تكون الوثائق حول كائن COM أوضح في بعض الأماكن، لكن الدعم ردّ على أسئلتنا في غضون يوم."
Caroline Ashby Compliance Analyst, Regulated Bank
DOCConverter.exe C:\Reports\*.docx C:\Output\ -c XLS. يُحوّل هذا كل ملف DOCX في المجلد المصدر إلى XLS. أضف علامات مثل -SheetName Data أو -log لتسمية ورقة العمل والتقاط سجل تحقق.-SheetName. تُتجاوز فقرات النثر بين الجداول — يركّز إخراج XLS على البيانات الجدولية، وهي نقطة التحويل إلى جدول بيانات.DOCConverter.DOCConverterX). يمكنك استدعاؤه من .NET أو PHP أو Python أو VBScript أو ASP أو Ruby أو Perl أو أي بيئة أخرى متوافقة مع COM لدمج تحويل DOCX إلى XLS في تطبيقك الخاص.
string src = @"C:\test\Source.docx";
string dest = @"C:\test\Dest.pdf";
var cnv = new DocConverterX();
cnv.Convert(src, dest, "-cPDF -log c:\\test\\Doc.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\DocConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.docx";
var outPath = Path.GetTempFileName() + ".pdf";
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}\" -cPDF";
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("DocConverter.DocConverterX")
C.Convert "c:\source.docx", "c:\dest.pdf", "-cPDF -log c:\doc.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("DocConverter.DocConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=test.pdf"
Response.BinaryWrite C.ConvertToStream("C:\www\ASP\Source.docx", "C:\www\ASP", "-cpdf -log c:\doc.log")
set C = nothing
$src="C:\\test\\test.docx";
$dest="C:\\test\\test.pdf";
if (file_exists($dest)) unlink($dest);
$c= new COM("DocConverter.DocConverterX");
$c->convert($src,$dest, "-cPDF -log c:\\test\\Doc.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('DocConverter.DocConverterX')
src = "C:\\test\\test.docx"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -log c:\\test\\Doc.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("DocConverter.DocConverterX")
src = "C:\\test\\test.docx"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -log c:\\test\\Doc.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('DocConverter.DocConverterX');
c.Convert('c:\test\source.docx', 'c:\test\dest.pdf', '-cPDF -log c:\test\Doc.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("DocConverter.DocConverterX");
c.Convert("C:\\test\\source.docx", "C:\\test\\dest.pdf", "-cPDF");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.docx"; my $dest = "C:\\test\\test.pdf"; my $c = CreateObject Win32::OLE 'DocConverter.DocConverterX'; $c->convert($src, $dest, "-cPDF -log c:\\test\\Doc.log"); print $c->ErrorMessage if -e $dest;
قم بتنزيل النسخة التجريبية المجانية وحول ملفاتك في دقائق.
لا تحتاج إلى بطاقة ائتمان أو بريد إلكتروني.