python-Excel: Chinese Characters
zxo102
zxo102 at gmail.com
Sun Aug 14 22:40:02 EDT 2005
Hi there,
I am trying to put data including Chinese Characters into Excel
through python. But I got some problems. Here is my sample code:
##################################################
#
import win32com.client
xlapp = win32com.client.DispatchEx("Excel.Application")
xlbook = xlapp.Workbooks.Open("test.xls")
sht = xlbook.Worksheets("Sheet1")
# data is provided in case 1 and case 2 below
...
sht.Range(sht.Cells(1, 1), sht.Cells(2,4)).Value = data
#
##################################################
Using the above code, I tested two cases for "data". The "data" from
both two cases are same: tuple basically. But in case 1, only 2222 and
3333 are inserted into Excel. All other cells are blank. in case2, all
data including Chinese Characters are inserted into Excel and
everything is fine. My real data is like case 1.
#case 1 ------------------------------------------
rp = {'r1':['\xd6\xd7\xc1\xf6','\xd6\xd7\xc1\xf6'],
'r2':['\xd6\xd7\xc1\xf6','\xd6\xd7\xc1\xf6'],
'r3':[2222,3333],
'r4':['\xd6\xd7\xc1\xf6','\xd6\xd7\xc1\xf6']
}
b = ()
for k in range(len(rp['r1'])):
a = rp['r1'][k],rp['r2'][k],rp['r3'][k],rp['r4'][k]
if len(b) == 0:
b = a
else:
b = b,a
data = b
#case 2 ------------------------------------------
data =(('\xd6\xd7\xc1\xf6', '\xd6\xd7\xc1\xf6', 2222,
'\xd6\xd7\xc1\xf6'),
('\xd6\xd7\xc1\xf6", '\xd6\xd7\xc1\xf6", 3333,
'\xd6\xd7\xc1\xf6'))
Anybody knows what is going on with it?
Thanks for your help.
Ouyang
More information about the Python-list
mailing list