--coding:utf8 --
import xlrd
import os
def check():
for root,dirs,files in os.walk(work_url):
for file in files:
path=os.path.join(root,file)
if path.endswith('.xls')or path.endswith('.xlsx'):
workbook = xlrd.open_workbook(path)
sheet_names = workbook.sheet_names() # 返回表名list
for sheet in range(len(sheet_names)):
work_sheet = workbook.sheet_by_name(sheet_names[sheet])
nrow = work_sheet.nrows
ncol = work_sheet.ncols
for i in range(nrow):
for j in range(ncol):
val=str(work_sheet.cell_value(i,j))
if keyword in val: #判斷是否存在關(guān)鍵字,用in不能用==
row=i+1
col=j+1
#列數(shù)轉(zhuǎn)為excel列數(shù)
if col <= 26: # 兼容26以內(nèi)
col = chr(col + 64)
else: # 兼容26以上到676
if col % 26 == 0:
m = chr(col // 26 - 1 + 64)
n = chr(64 + 26)
else:
m = chr(col // 26 + 64) # python3只取整數(shù)需要使用// python2取整數(shù)要轉(zhuǎn)為浮點型
n = chr(col% 26 + 64)
col = m + n
print(path,'\t',sheet_names[sheet],'\t',str(col)+str(row))
if val_show==True: #是否顯示匹配值
print(val)
if __name__ == '__main__':
work_url = r'C:\Users\swt1051\Desktop\檢測目錄'
keyword = 'ubGold'
val_show=True #是否顯示匹配值
print('keyword為:\t'+keyword)
print('==================檢索中====================')
try:
check()
except Exception:
print('數(shù)據(jù)存在異常?。。。。。。。。。?!')
print('關(guān)閉當前的檢索文檔,或者刪除excel的tmp文件')