Python 员工工时汇总
PS: 也是从网上各个帖子中学习的Python,因此代码的格式以及内容有粘贴网上其他大神的代码,如有侵权请告知删除
每个人的工时表:
需要汇总的工时表(手动绘制):
需要汇总的工时表(程序生成):
程序界面:
代码:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
from tkinter import *
import tkinter.filedialog
import os
import xlrd3 as xlrd
import xlwt
root = Tk()
root.title('工时计算')
root.geometry('650x300')
FolderName1 = ""
FolderName2 = ""
FileName = ""
startRow = 1 #第一列是空的
def Button1Anwser():
global FolderName1
Path = Label(root, text='')
FolderName1 = tkinter.filedialog.askdirectory()
Path.config(text= FolderName1)
Path.grid(row=4, column=0, sticky=W)
def Button2Anwser():
global FolderName2
Path = Label(root, text='')
FolderName2 = tkinter.filedialog.askdirectory()
Path.config(text= FolderName2)
Path.grid(row=6, column=0, sticky=W)
def Button3Anwser():
global FileName
Text = Label(root, text='')
Text.config(text='正在汇总')
Text.grid(row=7, column=1)
ECEL_Path = FolderName2 + '\\' + 'Result.xls'
Write_File = xlwt.Workbook()
Table = Write_File.add_sheet('Caculate', cell_overwrite_ok=True)
NameList = [] #用来存储姓名
OtherList = [] #用来存储其他
SupportList = [] # 用来存储售后
Project = [] #用来存储项目号和工时(按人算)
Project2 = [] # 用来存储项目号
Create = [] # 用来存储研发号和工时(按人算)
Create2 = [] # 用来存储研发号
for FolderName, SubFolders, FileNames in os.walk(FolderName1):
for FileName in FileNames:
print(FileName.split('.')[0])
NameList.append(FileName.split('.')[0])#存放姓名
NameFile = xlrd.open_workbook(FolderName + '\\' + FileName)
SheetNum = NameFile.nsheets
for i in range(SheetNum):
ReadSheet = NameFile.sheet_by_index(i)
for row in range(1, ReadSheet.nrows):
Information = ""
pro