I have a spreadsheet which has columns (X, Y, Att1, Att2 ...). I want to create a point shapefile, all columns in the spreadsheet to be the column in the shapefile. How can I do this in QGIS?


You will use the Delimited Text Import feature as a one time process.

Save the spreadsheet as .csv (comma separated value) then import it into QGIS via the menu command LAYER|ADD DELIMITED TEXT LAYER

Many of the options can remain preset, although likely you will have to choose which columns hold the x y data. You may also have to select a CRS (coordinate reference system) as the second stage of the wizard. For instance for x y in decimal degrees you can choose EPSG:4326

Once the data has been imported, you then right click on the new layer and SAVE AS an ESRI Shapefile to create the shp format.

There is also the ability to read xl files directly but this is troublesome IMHO and does not create a shapefile.


  1. Convert your spreadsheet to CSV(comma separated values) using MS Office or OpenOffice
  2. Use QGIS text delimited layer plugin to import your xy data file.
  3. Select X(Longitude/Easting) and Y(Latitude/Norhting) and press OK
  4. In CRS window select CRS (for example WGS84) & Press OK
  5. In the Layers section select the recently imported layer right click and save as shapefile.
  • text delimited import is natively available, it is not a plugin anymore – Willy Oct 21 '13 at 6:35
  • @Willy thanks for your information but i think it was not there in QGIS 1.8 and user didn't mention which version he has on his system. – Farhat Abbas Oct 21 '13 at 6:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.