擅长:python、mysql、java
<p><code>.Cells(row,col)</code>返回一个<code>Range</code>对象。您可能需要单元格中的文本:</p>
<pre><code>cell = xl.ActiveSheet.Cells(1,2).Text
</code></pre>
<p>或者</p>
<pre><code>cell = xl.ActiveSheet.Range('B1').Text
</code></pre>
<p>结果值将是Unicode字符串。要转换为可以写入文件的字节,请使用<code>.encode(encoding)</code>,例如:</p>
<pre><code>bytes = cell.encode('utf8')
</code></pre>
<p>以下示例使用以下电子表格:</p>
<p><img src="https://i.stack.imgur.com/ocdFy.png" alt="enter image description here"/></p>
<pre><code>import win32com.client
xl = win32com.client.gencache.EnsureDispatch('Excel.Application')
xl.Workbooks.Open(r'book1.xlsx')
cell = xl.ActiveSheet.Cells(1,2)
cell_value = cell.Text
print repr(cell)
print repr(cell_value)
print cell_value
</code></pre>
<p>输出(注意,只有当控制台/IDE支持这些字符时,才会打印中文):</p>
<pre><code><win32com.gen_py.Microsoft Excel 14.0 Object Library.Range instance at 0x129909424>
u'\u4e2d\u56fd\u4eba'
中国人
</code></pre>