Forum >> Principianti >> Manipolazione file xlsx

Pagina: 1

Ciao a tutti,
sto cercando di leggere un file xlsx, nel quale devo andare a cercare, all'interno della colonna 'C' una stringa (RES) per poi cercare degli altri elementi.
Ho scritto questo pezzo di codice che funziona in parte, nel senso che trova le corrispondenze, ma non scrive nulla nella colonna 'D' e continua a darmi questo errore: Traceback (most recent call last):
File "C:/CRISTINA/PROGETTI/Database/New.py", line 12, in <module>
if (re.search("RES ",sheet.cell(x,3).value)):
File "C:\Python27\lib\re.py", line 146, in search
return _compile(pattern, flags).search(string)
TypeError: expected string or buffer
------------------------------------------------
import os
import openpyxl
import re

wb = openpyxl.load_workbook('C:\Users\cristinab\Desktop\ARTICO_1.xlsx')
sheet = wb.worksheets0
ws = wb.active


for x in xrange(ws.max_row):
x=x+1
if (re.search("RES ",sheet.cell(x,3).value)):
#print column_descriptionx.value
if (re.search("SMD ",sheet.cell(x,3).value)):
sheet.cell(x,4).value="SMD"
#print "SMD"
else:
if (re.search("PTH ",sheet.cell(x,3).value)):
sheet.cell(x,4).value="PTH"
#print "PTH"
else:
sheet.cell(x,4).value="-"
#print "-"
ws.cell(x,4).value=sheet.cell(x,4).value

wb.template=True
wb.save('C:\Users\cristinab\Desktop\ARTICO_1.xlsx')
------------------------------------------------------------------------
Qualcuno mi sa aiutare? L'errore sembra che sia imputabile al fatto che non legge come stringa il contenuto della cella, ma se provo a fare un cast, si blocca appena trova un carattere particolare (come il °...).
Grazie!
Ciao caro, due annotazioni.

1. Correggi il tuo codice utilizzando il pulsante code che trovi vicino alla tavolazza dei colori in fase di inserimento.



2. Isola solo la parte di codice che non si comporta come vorresti e ragioniamo su quello.

Cya


Pagina: 1



Esegui il login per scrivere una risposta.