# Import from CSV or Excel

**URL:** <https://forum.inductiveautomation.com/t/import-from-csv-or-excel/8901>\
**Category:** General Discussion\
**Created:** [August 14, 2014, 7:31am UTC](https://forum.inductiveautomation.com/t/import-from-csv-or-excel/8901 "2014-08-14T07:31:05Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ross](https://avatars.discourse-cdn.com/v4/letter/r/e274bd/32.png) [@Ross](https://forum.inductiveautomation.com/u/Ross)\
**Post date:** [August 14, 2014, 7:31am UTC](https://forum.inductiveautomation.com/t/import-from-csv-or-excel/8901/1 "2014-08-14T07:31:05Z")

</div>

Hi All,

First post on here, we have just starting using Ignition and have a project were we are trying to import work order information (SKU, WO number, QTY etc) via a CSV file or ideally an excel file (obviously CSV is easier).

Has anyone had experience with this? If so do we need a specific module in Ignition in order to do it?

Any advice / help would be much appreciated.

Thanks  
Ross

---

<div class="post-metadata">

**Author:** ![KathyApplebaum](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kathyapplebaum/32/7261_2.png) [@KathyApplebaum](https://forum.inductiveautomation.com/u/KathyApplebaum)\
**Post date:** [August 14, 2014, 2:29pm UTC](https://forum.inductiveautomation.com/t/import-from-csv-or-excel/8901/2 "2014-08-14T14:29:11Z")

</div>

You might take a look at [system.dataset.fromCSV](https://www.inductiveautomation.com/support/usermanuals/ignition/index.html?system_dataset_fromcsv.htm). You don’t need a special module for that, although you may need modules (at least Vision) to do something interesting once you have the data imported.

---

<div class="post-metadata">

**Author:** ![SeanT](https://avatars.discourse-cdn.com/v4/letter/s/df788c/32.png) [@SeanT](https://forum.inductiveautomation.com/u/SeanT)\
**Post date:** [August 14, 2014, 5:26pm UTC](https://forum.inductiveautomation.com/t/import-from-csv-or-excel/8901/3 "2014-08-14T17:26:38Z")

</div>

You can also use Python’s csv module:

`import csv
reader = csv.reader(open("some.csv", "rb"))
for row in reader:
    print row`

---

<div class="post-metadata">

**Author:** ![Ross](https://avatars.discourse-cdn.com/v4/letter/r/e274bd/32.png) [@Ross](https://forum.inductiveautomation.com/u/Ross)\
**Post date:** [August 14, 2014, 10:48pm UTC](https://forum.inductiveautomation.com/t/import-from-csv-or-excel/8901/4 "2014-08-14T22:48:15Z")

</div>

Thank you for your responses, much appreciated, I will look into this further. 😃

---

<div class="post-metadata">

**Author:** ![pascal](https://avatars.discourse-cdn.com/v4/letter/p/e9a140/32.png) [@pascal](https://forum.inductiveautomation.com/u/pascal)\
**Post date:** [July 28, 2017, 9:36am UTC](https://forum.inductiveautomation.com/t/import-from-csv-or-excel/8901/5 "2017-07-28T09:36:32Z")

</div>

How can we create a dataset using the csv.reader function ?

---

<div class="post-metadata">

**Author:** ![Caleb\_Bohon](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/caleb_bohon/32/3293_2.png) [@Caleb\_Bohon](https://forum.inductiveautomation.com/u/Caleb_Bohon)\
**Post date:** [August 2, 2017, 1:24pm UTC](https://forum.inductiveautomation.com/t/import-from-csv-or-excel/8901/6 "2017-08-02T13:24:05Z")

</div>

You can create a dataset with the system.dataset.toDataSet() function.

See info in the user manual here:  
[https://docs.inductiveautomation.com/display/DOC79/system.dataset.toDataSet](https://docs.inductiveautomation.com/display/DOC79/system.dataset.toDataSet)

You would have to create a row of string headers as a list then rows of data. The example in the documentation is a good starting point.
