테이블의 논리적 루프 가져 오기

import os 
import win32com.client as win32 
import shutil 
import openpyxl 

##### 첫 번째 단계는 xlsx 파일을 원래 폴더에 놓고 bak 폴더에 직접 복사하는 것입니다. 슬라이스 rst 

파일 = [] 

경로 = os.getcwd () # 변환 전에 프로그램이 위치한 파일 디렉토리 

path_bak = os.getcwd () + r '/ bak /' 

pathdir = os.listdir (path) 
print (pathdir) 
for s in pathdir : 
    newdir = os.path. join (path, s) 
    if os.path.isfile (newdir) : 
        os.chdir (path_bak) 
        pathdir_bak = os.listdir (path_bak) 
       # print (pathdir_bak) 
        if os.path.splitext (newdir) [1] == " .xls ": 
            t = os.path.split (s) [1] + r'x ' 
            if os.path.exists (t) :
            # print (os.path.exists (os.path.split (s) [1])) 
                break 
                excel.Application.Quit ()
            else : 
                excel = win32.gencache.EnsureDispatch ( 'Excel.Application') 
                wb = excel.Workbooks.Open (newdir) 
             # print (newdir) 
                path_dir = os.path.split (newdir) [0] 
                path_file = os.path. split (newdir) [1] 
              # print (path_dir) 
             # print (path_file) 
                wb.SaveAs (path_dir + '/ bak /'+ path_file + 'x', FileFormat = 51) # FileFormat = 51은 .xlsx 확장자 
                wb 용입니다. Close () # FileFormat = 56은 .xls 확장자 용입니다. 
        elif os.path.splitext (newdir) [1] == ".xlsx": 
            file.append (newdir) 


    elif os.path.isdir (newdir) :
        계속하다
 
for i in range (len (file)) : 
    pcm_file = file [ i] 
    path_0 = os.path.split (file [i]) [0] 
    path_1 = os.path.split (file [i]) [1] 
    이전 
    이름 = 경로 _0 + '/'+ 경로 _1 새 이름 = 경로 _0 + r '/ bak / '+ path_1 
    shutil.copyfile (oldname, newname) 

##### 두 번째 단계는 파일 디렉토리를 bak 폴더로 전환하고 슬라이스 uvw 



file_deal = [] 

path_deal = os.getcwd () # 프로그램 위치 변환 전 파일 디렉토리 





pathdir_deal = os.listdir (path_deal) 
for u in pathdir_bak : 
    newdir_deal = os.path.join (path_deal, u) 
    file_deal.append (newdir_deal) 
   # print (file_deal)



범위 (len (file_deal))에있는 
    j의 경우 : pcm_file_deal = file_deal [j] 
    path_0_deal = os.path.split (file_deal [j]) [0] # 文件 所在 目录
    path_1_deal = os.path.split (file_deal [j]) [1] # 文件 名称 带 后缀
  # print (pcm_file_deal) 
  # print (path_0_deal) 
    print (path_1_deal) 


    wb = openpyxl.load_workbook (path_1_deal) 

    allSheets = wb.get_sheet_names () 

    for i in range (len (allSheets)) : 
        sheet = wb.get_sheet_by_name (allSheets [i]) 
        for row in sheet.iter_rows () : 
            for cell in row : 
                if str (str (cell.value) .replace ( '', '')). find ( "资产 负债 表" )! = -1 : 
                    sheet_selected = wb.get_sheet_by_name (allSheets [i])
                    print (sheet_selected) 
                    break 
ws = wb.get_sheet_by_name (sheet_selected.title) 
print (ws)






추천

출처blog.csdn.net/jidawanghao/article/details/112680178