On 06/05/2010 06:47 PM, noydb wrote:
Is there a way to save a .xls file (the first worksheet) as a .dbf
or .csv without opening an instance of Excel with win32com.client
(been awhile, is this the best module these days for v2.5)?  In case a
computer does not have Excel (2007) installed.

Use the "xlrd" module[1]

############################
import csv
import xlrd

FILE_NAME = 'example.xls'
wb = xlrd.open_workbook(FILE_NAME)

for name in wb.sheet_names():
  out = file('%s.csv' % name, 'wb')
  writer = csv.writer(out)
  sheet = wb.sheet_by_name(name)
  for row in xrange(sheet.nrows):
    writer.writerow([
      sheet.cell_value(row, col)
      for col in xrange(sheet.ncols)
      ])
  out.close()
#############################

You say you only want the first sheet, so adjust accordingly.

-tkc

[1]
http://pypi.python.org/pypi/xlrd/




--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to