U hebt mappen vol Excel-werkmappen die een SOAP-webservice, een EDI-partner, een regelgevende inzending of een ERP-integratie moeten voeden — en het ontvangende systeem spreekt XML, geen XLSX. Elk bestand openen in Excel en het handmatig opslaan als XML stopt na de tweede werkmap met werken, en de ingebouwde XML-export van Excel negeert schema-eisen die het downstream-systeem daadwerkelijk controleert. Total Excel Converter X converteert XLS- en XLSX-bestanden naar goedgevormde XML vanaf de opdrachtregel, in batch, zonder GUI en zonder dat een Microsoft Excel-installatie nodig is. Installeer het op een Windows-server, roep het aan vanuit een script of via ActiveX, en laat het onbeheerd draaien.
*.xlsx) en de converter verwerkt elke overeenkomende werkmap in één keer
(30 dagen, geen e-mail)
(serverlicentie, eeuwigdurend)
Windows 7/8/10/11 • Server 2008/2012/2016/2019/2022
Excel is een raster. Rijen en kolommen bevatten waarden, en de betekenis van elke kolom leeft in een kopregel die mensen lezen. Het formaat is geweldig voor analisten, slecht voor systeemintegratie. SOAP-services, EDI-gateways, regelgevende portals, bankinterfaces en HL7-zorgmessages parseren geen XLSX. Ze verwachten XML met expliciete elementnamen, gedefinieerde nesting en voorspelbare escaping-regels.
XML is hiërarchisch en zelfbeschrijvend. Elke waarde draagt een elementnaam, het document valideert tegen een schema, en elk platform — Linux, Java, .NET, IBM-mainframes — kan het parseren zonder propriëtaire bibliotheken. Wanneer Excel-gegevens die wereld moeten binnenkomen, moeten ze eerst XML worden. Total Excel Converter X schrijft geldige XML waarbij elke Excel-rij verandert in een record-knooppunt, de kopregel veldnamen levert en speciale tekens worden geëscaped zodat de uitvoer schoon door elke XML-parser gaat.
| Excel (XLS/XLSX) | XML | |
|---|---|---|
| Vorm | Tweedimensionaal raster | Hiërarchische boom |
| Veldnamen | Impliciet (kopregel) | Expliciet op elk record |
| Validatie | Geen op bestandsniveau | Schema (XSD, DTD) |
| Consumenten | Mensen, Excel-bewuste tools | SOAP, EDI, ERP, HL7, toezichthouders |
| Cross-platform | Best op Windows + Office | Universeel — elke taal en OS |
Download het installatieprogramma via de bovenstaande link en voer het uit op uw Windows-server of werkstation. De installatie duurt minder dan een minuut. Er is geen Microsoft Excel-installatie vereist — de converter leest XLS en XLSX rechtstreeks met zijn eigen parser, inclusief formules, stijlen en werkmappen met meerdere bladen.
Open cmd.exe of PowerShell. Het uitvoerbare bestand van de converter is XLSConverter.exe, te vinden in de installatiemap (meestal C:\Program Files\CoolUtils\TotalExcelConverterX\). Voeg het toe aan uw systeem-PATH of gebruik het volledige pad in uw commando's.
Het eenvoudigste commando converteert alle Excel-bestanden in een map naar XML:
XLSConverter.exe C:\Sheets\*.xlsx C:\Output\ -c XML
Dit verwerkt elk .xlsx-bestand in C:\Sheets\ en slaat de resulterende XML-bestanden op in C:\Output\. Elke werkmap levert één XML-bestand op met dezelfde basisnaam. Elke rij in de bron wordt een <Row>-element en elke cel wordt een onderliggend element genoemd naar de overeenkomstige kolomkop.
Beheer de XML-uitvoer met extra vlaggen:
XLSConverter.exe C:\Sheets\*.xlsx C:\Output\ -c XML -Encoding UTF-8 -FirstRowAsHeader true -log C:\Logs\xls2xml.log
-Encoding UTF-8 — stel de XML-codering in (UTF-8, UTF-16, Windows-1252, ISO-8859-1)-FirstRowAsHeader true — gebruik rij 1 als elementnamen in plaats van generieke Column1, Column2-Sheet "Invoices" — converteer alleen het benoemde werkblad in plaats van elk blad-log C:\Logs\xls2xml.log — schrijf een conversielog ter verificatieSla uw commando op in een .bat-bestand en plan het in met Windows Taakplanner:
@echo off "C:\Program Files\CoolUtils\TotalExcelConverterX\XLSConverter.exe" C:\Incoming\*.xlsx C:\Archive\XML\ -c XML -Encoding UTF-8 -FirstRowAsHeader true -log C:\Logs\xls2xml.log
Dit voert de conversie elke nacht uit (of op elk interval dat u instelt) en schrijft een logbestand zodat u de resultaten kunt verifiëren. Plaats overdag nieuwe werkmappen in C:\Incoming\, en de integratiepipeline pakt ze automatisch op.
Total Excel Converter X bevat een volledige ActiveX-interface. U kunt de converter aanroepen vanuit elke COM-compatibele omgeving — .NET, VBScript, PHP, Python, Ruby of ASP. Hiermee kunt u Excel-naar-XML-conversie inbouwen in uw eigen webapplicatie, integratiebroker of documentwerkstroom zonder een opdrachtregelproces te hoeven starten.
Voorbeeld (C#/.NET):
XLSConverterX Cnv = new XLSConverterX();
Cnv.Convert("C:\\Sheets\\invoices.xlsx", "C:\\Output\\invoices.xml", "-c XML -Encoding UTF-8 -FirstRowAsHeader true -log c:\\Logs\\xls.log");
Voorbeeld (PHP):
$c = new COM("XLSConverter.XLSConverterX");
$c->convert("C:\\Sheets\\invoices.xlsx", "C:\\Output\\invoices.xml", "-c XML -Encoding UTF-8 -FirstRowAsHeader true -log c:\\Logs\\xls.log");
Dezelfde aanroep werkt vanuit ASP.NET, VBScript, Python, Ruby, Perl en JavaScript (Windows Script Host). Uw integratielaag kan geüploade Excel-bestanden accepteren, ze in het geheugen naar XML converteren en de XML-payload rechtstreeks doorsturen naar een SOAP-eindpunt of een ERP-wachtrij.
| Functie | Online converters | Total Excel Converter X |
|---|---|---|
| Batchverwerking | Eén bestand tegelijk | Onbeperkt aantal bestanden per batch |
| Gegevensprivacy | Werkmappen geüpload naar server van derden | Bestanden verlaten nooit uw machine |
| Coderingsbeheer | Alleen UTF-8, vaak gebroken | UTF-8, UTF-16, Windows-1252, ISO-8859-1 |
| Speciale-tekens-escapen | Inconsistent, vaak ongeldige XML | Volledige escaping voor &, <, >, ", stuurtekens |
| Werkmappen met meerdere bladen | Alleen eerste blad | Alle bladen of benoemd blad |
| Automatisering | Alleen handmatig | Opdrachtregel, .bat, Taakplanner, ActiveX |
| Serverimplementatie | Niet mogelijk | Ontworpen voor servers, geen GUI nodig |
| Vereist Excel geïnstalleerd | N.v.t. | Nee |
| Vereist internet | Ja | Nee |
De converter leest XLS en XLSX rechtstreeks met zijn eigen parser. U hebt geen Microsoft Office, LibreOffice of welke spreadsheettoepassing dan ook nodig op de server. Dit voorkomt licentiekosten en de bekende instabiliteit van het automatiseren van Excel in onbeheerde scenario's.
Total Excel Converter X is ontworpen voor onbeheerd gebruik. Geen GUI-vensters, geen dialoogvensters, geen bevestigingsprompts. Het draait stil vanaf de opdrachtregel of als onderdeel van een dienst — precies wat een productie-integratieserver nodig heeft.
De uitvoer is goedgevormde XML. Ampersands worden &, hoekige haken worden < en >, aanhalingstekens binnen attributen worden geëscaped en losse stuurtekens worden verwijderd. De XML gaat door elke standaard-conforme parser zonder te stikken in een klantnaam die toevallig een ampersand bevatte.
Dezelfde opdrachtregeltool converteert Excel naar PDF, DOC, HTML, CSV, JSON, ODS, TXT en meer. Eén installatie dekt al uw spreadsheet-conversiebehoeften. Verander -c XML in -c JSON en u krijgt JSON-uitvoer met dezelfde batch- en automatiseringsfuncties.
(30 dagen, geen e-mail of creditcard)
(serverlicentie, eeuwigdurend)
Windows 7/8/10/11 • Server 2008/2012/2016/2019/2022
"Onze verzendpartner accepteert inkooporders alleen als XML over SOAP, maar het operations-team bouwt ze in Excel. Total Excel Converter X draait als geplande .bat op de integratieserver en zet de dagelijkse orderwerkmap binnen drie seconden om in XML. De escaping handelt de speciale tekens in klantnamen af die onze vorige in-house parser braken. Drop-in-vervanging voor een eigen VBA-script dat niemand wilde onderhouden."
Andreas Vogt Integration Engineer, Logistik AG
"We wisselen EDI-documenten uit met ongeveer veertig retailpartners, en een derde wil XML-enveloppen in plaats van X12 of EDIFACT. De converter zit tussen onze spreadsheet-gebaseerde orderdesk en de EDI-gateway. Kopregel-mapping betekent dat het XML-schema van elke partner aansluit op de kolomnamen die we al gebruiken. Codering wordt per partner ingesteld via de opdrachtregel. Geen verrassingen in productie."
Priya Subramanian EDI Specialist, Wholesale Distribution
"We dienen wekelijks regelgevende rapporten in bij de centrale bank in XML. De brongegevens worden door het financieel team afgestemd in Excel en moeten dan een strikt gecodeerde XML-payload worden. De UTF-8-uitvoer en schone ampersand-escaping van de converter doorstaan de validator van de toezichthouder in één keer. We bewerken de uitvoer nog steeds na via XSLT om in het exacte doelschema te passen, maar de conversiestap zelf is betrouwbaar en snel."
Marc Lefevre Regulatory Reporting Lead, Banque Mutuelle
XLSConverter.exe C:\Sheets\*.xlsx C:\Output\ -c XML. Dit converteert elke Excel-werkmap in de bronmap naar XML. Voeg vlaggen toe zoals -Encoding UTF-8, -FirstRowAsHeader true of -log om de uitvoerstructuur en codering te regelen.-FirstRowAsHeader true op en de converter gebruikt elke kolomkop als de elementnaam voor dat veld, dus een CustomerName-kolom produceert <CustomerName>-elementen. Zonder die vlag valt de converter terug op generieke Column1-, Column2-tags. Rij-knooppunten zijn standaard <Row>; dit geeft u een voorspelbare, regelmatige structuur die schoon mapt naar de meeste consumerende schema's.-Encoding-vlag. UTF-8 is de veilige standaard voor SOAP, EDI en de meeste moderne integraties. Gebruik UTF-16 wanneer een downstream-systeem dit specifiek vereist, of een Windows-codepagina bij het voeden van een legacy-partner die single-byte XML verwacht.&, hoekige haken worden < en >, dubbele aanhalingstekens binnen attribuutwaarden worden ", en losse stuurtekens die een XML 1.0-parser zouden breken worden verwijderd. De uitvoer valideert tegen elke standaard-conforme parser zonder handmatige opschoning.-Sheet "Invoices" op om alleen één benoemd werkblad te converteren, of -Sheet 1 om op nul-gebaseerde index te kiezen. Verborgen bladen en grafiekbladen worden overgeslagen.XLSConverter.XLSConverterX). U kunt het aanroepen vanuit .NET, PHP, Python, VBScript, ASP, Ruby, Perl en elke andere COM-compatibele omgeving om Excel-uploads in realtime naar XML te converteren en het resultaat door te sturen naar een SOAP-eindpunt of berichtenwachtrij.
string src="C:\\test\\Source.xlsx";
string dest="C:\\test\\Dest.PDF";
ExcelConverterX Cnv = new ExcelConverterX();
Cnv.Convert(src, dest, "-c PDF -log c:\\test\\Excel.log");
MessageBox.Show("Conversie voltooid!");
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("begonnen...");
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\ExcelConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var msgPath = $@"{assemblyDirectoryPath}\MSG\MSG-1.xlsx";
var outPath = Path.GetTempFileName() + ".pdf";
startInfo.FileName = executablePath;
if (File.Exists(outPath))
{
File.Delete(outPath);
}
if (File.Exists(executablePath) && File.Exists(msgPath))
{
sbLogs.AppendLine("bestanden aanwezig...");
}
else
sbLogs.AppendLine("EXE- en MSG-bestanden NIET aanwezig...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $"{msgPath} {outPath}";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wacht...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"voltooid...{DateTime.Now.ToString()}");
}
int sleepCounter = 10;
while(!File.Exists(outPath) && sleepCounter > 0)
{
System.Threading.Thread.Sleep(1000);
sbLogs.AppendLine("slaap...");
sleepCounter--;
}
if (File.Exists(outPath))
sbLogs.AppendLine("Conversie succesvol voltooid.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("ExcelConverter.ExcelConverterX")
C.Convert "c:\test\source.xlsx", "c:\test\dest.pdf", "-cPDF -log c:\test\Excel.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("ExcelConverter.ExcelConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Rresponse.AddHeader "Content-Disposition", "attachment; filename=test.pdf"
Response.BinaryWrite c.ConvertToStream("C:\www\ASP\Source.xlsx", "C:\www\ASP", "-cpdf -log c:\html.log")
set C = nothing
$src="C:\\test\\test.XLS";
$dest="C:\\test\\test.CSV";
if (file_exists($dest)) unlink($dest);
$c= new COM("ExcelConverter.ExcelConverterX");
$c->convert($src,$dest, "-c csv -log c:\\test\\xls.log");
if (file_exists($dest)) echo "OK"; else echo "mislukt:" . $c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('ExcelConverter.ExcelConverterX')
src="C:\\test\\test.xlsx";
dest="C:\\test\\test.pdf";
c.convert(src, dest, "-c PDF -log c:\\test\\Excel.log");
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("ExcelConverter.ExcelConverterX")
src="C:\\test\\test.xlsx";
dest="C:\\test\\test.pdf";
c.convert(src, dest, "-c PDF -log c:\\test\\Excel.log");
if not os.path.exists(file_path):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c:=CreateOleObject('ExcelConverter.ExcelConverterX');
C.Convert('c:\test\source.xlsx', 'c:\test\dest.pdf', '-cPDF -log c:\test\Excel.log');
IF c.ErrorMessage<> Then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("ExcelConverter.ExcelConverterX");
c.Convert("C:\\test\\source.xlsx", "C:\\test\\dest.pdf", "-c PDF");
if (c.ErrorMessage!="")
alert(c.ErrorMessage)
use Win32::OLE; my $src="C:\\test\\test.XLS"; my $dest="C:\\test\\test.CSV"; my $c = CreateObject Win32::OLE 'ExcelConverter.ExcelConverterX'; $c->convert($src,$dest, "-c csv -log c:\\test\\xls.log"); print $c->ErrorMessage if -e $dest;
Download de gratis proefversie en converteer uw bestanden in enkele minuten.
Geen creditcard of e-mail vereist.