资源简介

代码用于读Excel中的数据,然后批量写进word,文件的读写有专门的类,对于批量处理excel很有帮助

资源截图

代码片段和文件信息

# -*- coding: utf-8 -*-
“““
在python的应用过程中,有时候需要有一些记录输出,表格和文档是比较实用、大众和清晰的工具
工具:
    Python3.4
    win32com模块

@author: DongChuanting
“““
import win32com.client
import os

class RemoteExcel():
    “““对excel表格的操作

    “““
    def __init__(self filename=None):
        “““初始化函数

        Args:
            filename: 要进行操作的文件名,如果存在此文件则打开,不存在则新建
                        此文件名一般包含路径

        “““
        self.xlApp=win32com.client.Dispatch(‘Excel.Application‘)
        self.xlApp.Visible=0
        self.xlApp.DisplayAlerts=0    #后台运行,不显示,不警告
        if filename:
            self.filename=filename
            if os.path.exists(self.filename):
                self.xlBook=self.xlApp.Workbooks.Open(filename)
            else:
                self.xlBook = self.xlApp.Workbooks.Add()    #创建新的Excel文件
                self.xlBook.SaveAs(self.filename)
        else:
            self.xlBook=self.xlApp.Workbooks.Add()
            self.filename=‘‘

    def get_cell(self row col sheet=None):
        “““读取单元格的内容

        Args:
            row: 行
            col: 列
            sheet: 表格名(不是文件名)

        “““
        if sheet:
            sht = self.xlBook.Worksheets(sheet)
        else:
            sht = self.xlApp.ActiveSheet
        return sht.Cells(row col).Value

    def set_cell(self sheet row col value):
        “““向表格单元格写入

        Args:
            sheet: 表格名(不是文件名)
            row: 行
            col: 列
            value: 定入内容
        “““
        try:
            sht = self.xlBook.Worksheets(sheet)
        except:
            self.new_sheet(sheet)
            sht = self.xlBook.Worksheets(sheet)
        sht.Cells(row col).Value = value

    def save(self newfilename=None):
        “““保存表格“““
        if newfilename:
            self.filename = newfilename
            self.xlBook.SaveAs(self.filename)
        else:
            self.xlBook.Save()

    def close(self):
        “““保存表格、关闭表格,结束操作“““
        self.save()
        self.xlBook.Close(SaveChanges=0)
        del self.xlApp

    def new_sheet(self newSheetName):
        “““新建一个新表格“““
       

评论

共有 条评论

相关资源