91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用Python?實現按姓名拆分Excel為單獨文件并自動發給相應聯系人

發布時間:2022-10-14 16:17:38 來源:億速云 閱讀:196 作者:iii 欄目:web開發

本篇內容介紹了“如何用Python實現按姓名拆分Excel為單獨文件并自動發給相應聯系人”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

一、前言

最近遇到一個需求:

  • 把員工信息匯總表excel,按員工姓名拆分成單獨的excel,新excel以員工姓名命名,里面第一行是表頭,第二行是員工信息。

  • 然后把excel通過微信單獨發送給每位員工。

這個需求適用于發送月度工資表、學校學生信息統計等場景。

二、準備環境

1、請適用python 3.8.9 64位版本

其他版本在安裝python-office庫時會遇到各種問題,解決起來費時費力,建議直接使用python 3.8.9 64位版本,只需要在pycharm上搭建一個新環境,就可以輕松安裝使用了。

2、安裝python-office

pip install python-office

3、還會使用openpyxl這個庫,用來處理excel。

三、思路分析

1、讀取excel

openpyxl庫的load_workbook()讀取相應的表格,表單和單元格都用列表的形式使用就行,例如['Sheet1'].['B1']

2、刪除excel不用的行

openpyxl庫的刪除整行命令是ws.delete_rows(),括號中輸入行號,刪除行時要注意從后往前刪除,否則行號會出現錯誤:

比如刪除了第二行后要刪第三行,這時第三行已經變成了第二行,給刪除造成麻煩,從后往前刪就不會出現這個問題。

這里會用到最大行,命令為ws.max_row,接著用for遍歷,需要倒著數,for i in range(ws.max_row, 1, -1),這樣就從最后一行開始遍歷,一直遍歷到第二行,把不想要的用ws.delete_rows(i)刪除就行。

3、保存成單獨excel。

wb.save(),括號中寫新的文件名

4、利用python-office庫發送微信消息。

只需要用到一行命令,簡單背后的復雜都由python-office庫的開發者幫我們封裝好了。

office.wechat.send_file(who=, file=),分別在括號里寫上微信昵稱和文件地址。

四、代碼展示

上代碼~

import openpyxl, office #導入兩個庫,第一個處理excel,第二個用到微信發消息功能,第二個庫還有很多強大便捷的功能。
 
wb = openpyxl.load_workbook('C:/CoderWanFeng/./././???.xlsx') #括號中寫匯總文件地址
ws = wb['Sheet1']              #獲取excel表單
Names = ws['B']                #獲取表單中第二列,我的表單第二列是微信昵稱,可以根據實際進行調整
max_row = ws.max_row           #獲取excel的最大行數
 
for Name in Names:             #第5行代碼獲得的昵稱需要遍歷
    Name = Name.value          #遍歷出來的是元祖,需要用value進行取值
    if Name == '程序員晚楓':    #我的excel B1單元格寫的是程序員晚楓,大家可以根據實際調整
        continue
    else:
        wb = openpyxl.load_workbook('C:/Users/./././???.xlsx')
        ws = wb['Sheet1']
        for j in range(max_row, 1, -1):   #倒著遍歷,方便刪除時不錯序
            if ws[f'B{j}'].value != Name:
                ws.delete_rows(j)         #刪除行
        file_path = f'C:/Users/./././{Name}.xlsx'  #重命名
        wb.save(file_path)  #保存excel
        office.wechat.send_file(who=Name, file=file_path)  #通過微信發送文件,分別在括號里寫上微信昵稱和文件地址。

“如何用Python實現按姓名拆分Excel為單獨文件并自動發給相應聯系人”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

饶河县| 东至县| 顺义区| 夏邑县| 玉环县| 台南县| 会同县| 昭苏县| 海宁市| 攀枝花市| 昆山市| 钦州市| 察哈| 太湖县| 资源县| 龙里县| 时尚| 嵊州市| 松江区| 湖北省| 宝兴县| 临潭县| 瓮安县| 常德市| 禹城市| 福鼎市| 乌兰察布市| 华池县| 康定县| 南昌县| 紫云| 娄底市| 芜湖县| 武乡县| 雷波县| 嘉兴市| 浪卡子县| 信丰县| 墨玉县| 东乌珠穆沁旗| 高雄市|