2017-07-07 50 views
0

我在Excel中有要分割的数据。如何在Python中使用win32com分割Excel数据(3.6)

这里是我的代码

import win32com.client 

excel = win32com.client.Dispatch("Excel.Application") 
excel.Visible = True 
wb = excel.Workbooks.Open('C:\\Users\\a\\Desktop\\bin256.xlsx') 
ws = wb.ActiveSheet 
input_number = ws.Range('U4:U15363') 
number = [input_number[i:i+60] for i in range(0,len(input_number),60)] 

但我得到这个错误:

Traceback (most recent call last): 
    File "<pyshell#13>", line 1, in <module> 
    number = [input_number[i:i+60] for i in range(0,len(input_number),60)] 
    File "<pyshell#13>", line 1, in <listcomp> 
    number = [input_number[i:i+60] for i in range(0,len(input_number),60)] 
    File "C:\Users\a\AppData\Local\Programs\Python\Python36-32\lib\site-packages\win32com\client\dynamic.py", line 256, in __getitem__ 
    return self._get_good_object_(self._oleobj_.Invoke(dispid, LCID, invkind, 1, index)) 
TypeError: Objects of type 'slice' can not be converted to a COM VARIANT 

我该如何解决呢?提前致谢。

回答

0

你只想打开excel吗?
也许你可以尝试熊猫

import pandas as pd 
file_path=r'E:\download\tmp\test.xlsx' 
file_path='./tmp/test.xlsx' 
df_name.to_excel(file_path,sheet_name='Sheet1',index=False) 
+0

没有我打开Excel和读取位于U(行)数据 – seokbin

+0

我想分割数据,每60 – seokbin