// ModbusManager Pro — CSV Export

Log Modbus Data to CSV
and Open It in Excel

Getting values out of a device is the easy half. The half that wastes an afternoon is a CSV that Excel opens as one column, or a decimal comma that turns 230.4 V into two cells. This page covers the export format, the locale traps, and how to lay the file out so a pivot table works on the first try.

Download Pro trial — free 14 days All logging features

Modbus RTU, ASCII and TCP · Windows 10/11 · One-time license

// why csv is still the answer

The format everyone downstream can already read

A commissioning report, an energy audit and a warranty claim have one thing in common: the person receiving it opens a spreadsheet, not your historian.

ModbusManager Pro records values to a local database, and any series over any time range can be written out as CSV. That file is the handover artefact — the customer keeps it, the auditor reads it, and nobody needs a licence or a login to open it in five years.

The rest of this page is about the details that decide whether that file is usable or annoying.

// the locale trap

Why Excel opens your CSV as one column

This is the single most common complaint about Modbus CSV export, and it is not the exporter’s fault. It is a mismatch between the file and the machine reading it.

Excel does not read a separator from the file. On Windows it uses the list separator from your regional settings. In the US and UK that is a comma; across most of continental Europe it is a semicolon, because the comma is already the decimal separator.

So the same file behaves differently on two desks:

File contains Excel with comma locale Excel with semicolon locale
time,volts
10:00:01,230.4
Correct: two columns. One column — nothing is split.
time;volts
10:00:01;230,4
One column. Correct: two columns, 230,4 is a number.
The fix that always works

Do not double-click the file. In Excel use Data → From Text/CSV, which asks for the delimiter and the decimal separator and shows a preview before importing. It takes ten seconds and removes the guesswork on any machine.

If a file has to be double-clickable on a specific customer’s PC, match that PC: comma-separated with a dot decimal for an English locale, semicolon-separated with a comma decimal for most of Europe.

// what excel changes without asking

Values that arrive intact and get mangled on import

Excel guesses a type for every cell. On industrial data those guesses are sometimes wrong in ways you only notice much later.

In the file What Excel may show Avoid it by
0012 12 — leading zeros gone, so a padded unit ID or serial stops matching. Import that column as Text in the From Text/CSV dialog.
4294967295 4.29E+09 — still correct underneath, but unreadable in a report screenshot. Widen the column and set a number format with no scientific notation.
1-2 2 Jan — a register range or a tag name read as a date. Import as Text, or avoid bare number-dash-number in tag names.
Non-ASCII names Mojibake in headers if the file is read as ANSI rather than UTF-8. Use the import dialog and set the encoding to UTF-8 explicitly.
// file layout

Wide or long: decide before you export

The same data can leave as one column per signal or one row per reading. Which one you want depends entirely on what happens to the file next.

Wide — one column per signal
timestamp;L1_V;L2_V;kW
10:00:00;230,4;229,8;12,7
10:00:05;230,1;229,9;12,9

Best for charting and for handing to someone who will just look at it. Every row is one moment in time, so a line chart is two clicks. Falls apart when signals have different intervals — you get gaps.

Long — one row per reading
timestamp;tag;value
10:00:00;L1_V;230,4
10:00:00;kW;12,7
10:00:03;L1_V;230,2

Best for pivot tables, databases and mixed intervals. Nothing needs to line up, and adding a signal does not change the column layout. Harder to eyeball without pivoting first.

A practical rule: if the file is going to a person, export wide. If it is going into another system, export long. Deadband makes this decision sharper — once values are only written on change, signals no longer share timestamps, and the wide layout starts filling with blanks.

// getting started

From device to spreadsheet

  1. Poll the registers you actually need. Confirm the values are scaled and decoded correctly on screen first. A CSV of wrong numbers is worse than no CSV, because it looks authoritative.
  2. Log to the Historian with a sensible interval. See logging interval and deadband for how to pick one that does not fill the disk.
  3. Pick a time range and export. Choose the window you want rather than dumping everything — a targeted export is what a report needs.
  4. Open with Data → From Text/CSV. Set delimiter, decimal separator and encoding. Import ID-like columns as Text.
  5. Check two rows against the device. Compare the first and last row with a live reading. This catches scaling and byte-order mistakes before the file leaves your hands.

If the devices sit on a shared serial line, the interval you can achieve is limited by the line rather than the software — see Modbus RTU data logger over RS-485. For the logging features themselves, timestamps and database location, see Modbus data logger software.

// frequently asked questions

Modbus CSV export — FAQ

Why does Excel open my Modbus CSV as a single column?+
Excel does not read the delimiter from the file. On Windows it uses the list separator from your regional settings — a comma in the US and UK, a semicolon in most of continental Europe where the comma is the decimal separator. A comma-separated file therefore stays in one column on a European machine. Use Data → From Text/CSV instead of double-clicking: it asks for the delimiter and decimal separator and previews the result.
Can I export only part of the logged history?+
Yes. Pick the series and the time range you want and export that. For a commissioning report a targeted window is usually more useful than the whole database, and the file stays small enough to email.
Should I export one column per signal or one row per reading?+
One column per signal (wide) is easier for a person to read and to chart. One row per reading (long) is better for pivot tables, for loading into another system, and when signals are logged at different intervals or with a deadband — in those cases the wide layout fills with blanks because the timestamps no longer line up.
Why did leading zeros disappear from my unit IDs?+
Excel treated the column as a number, so 0012 became 12. The value in the file is intact. In the From Text/CSV dialog set that column’s type to Text before importing, and the padding is preserved.
Does exporting require an internet connection or an account?+
No. The history is stored in a local database on your own PC and the export writes a file to your disk. There is no cloud service, no account and no server component — which is also why the file remains readable long after any licence question is settled.
// try it on your own devices

Log and export your Modbus data free for 14 days

Full Pro edition, no credit card. Poll a device, log it, export the range and open the file — the whole round trip in a few minutes.

Download Pro trial — free 14 days

Windows 10/11 · 14-day trial · Pro from $119 one-time