2012-06-21 8 views
1

openspxl의 iter_rows 함수를 사용하여 구문 분석하는 데이터 스프레드 시트가 있습니다. 그러나 사용하여 시트를 통해 내가 루프 때worksheet.iter_rows() 스프레드 시트에서 데이터를 가져 오지 않습니다.

range_expr = "{col}{startrow}:{col}{endrow}".format(col='C',startrow=4,endrow=ws.get_highest_row()+1) 

for row in ws.iter_rows(range_string=range_expr): 
    print row 
    if len(row) > 0: 
     cell = row[0] 
     if str(cell.value).isdigit(): 
      address.append(cell.value) 
     else: 
      continue 
print address 
raw_input("enter to continue") 

3 라인은 문은 항상 false를 평가하며, 어떤 값을 해결하기 위해 추가하지 않을 경우 첫 번째 의미 빈 괄호를 밖으로 결선에서. 내가 헷갈리는 이유는 엑셀 문서에 데이터가있을 때 print row이 아무 것도하지 않는 이유이다. 미리 감사드립니다.

+0

어떤 Excel 버전이 작동하나요? –

+0

Excel 2007, openpyxl 1.5.8, 파이썬 2.7.3, 윈도우 7 – zakparks31191

답변

0

내가 지나치게 복잡하게 만들고 단순화했습니다. Python 대화방에서 notbad.jpg에게 많은 감사를드립니다.

range_expr = 'C:C' 

for row in ws.iter_rows(row_offset=4): 
    '''do things''' 
관련 문제