使用 xlwings 根据其值获取单元格位置
get cell location based on its value using xlwings
我正在尝试根据值列表对列应用自动筛选器
过滤后,我想获得列位置
例如:在下面的屏幕截图中,如果我的过滤器值为 1,我希望单元格位置为 B10。
同样,当我的过滤器值为2时,我希望单元格位置为B11。
我怎样才能得到这个?我正在尝试类似下面的东西
import xlwings as xw
for val in filter_val_list:
for col in range(1, 1000000):
if sheet.range((row,col)).value == val:
print("The Row is: "+str(row)+" and the column is "+str(col))
检查该行是否被隐藏,如果没有则打印单元格地址:
import xlwings as xw
path = r"test.xlsx"
with xw.App(visible=False) as app:
wb = xw.Book(path)
ws = wb.sheets[0]
for a_cell in ws.used_range:
if a_cell.api.EntireRow.Hidden == False:
print(a_cell.address) # Or use .column if you need the column number.
wb.close()
如果您的 sheet 的第一行是您不想获取其单元格地址的 header 行,请使用 used_range[1:,:]
而不是 used_range
。您还可以指定一列而不是 used_range
.
我正在尝试根据值列表对列应用自动筛选器
过滤后,我想获得列位置
例如:在下面的屏幕截图中,如果我的过滤器值为 1,我希望单元格位置为 B10。
同样,当我的过滤器值为2时,我希望单元格位置为B11。
我怎样才能得到这个?我正在尝试类似下面的东西
import xlwings as xw
for val in filter_val_list:
for col in range(1, 1000000):
if sheet.range((row,col)).value == val:
print("The Row is: "+str(row)+" and the column is "+str(col))
检查该行是否被隐藏,如果没有则打印单元格地址:
import xlwings as xw
path = r"test.xlsx"
with xw.App(visible=False) as app:
wb = xw.Book(path)
ws = wb.sheets[0]
for a_cell in ws.used_range:
if a_cell.api.EntireRow.Hidden == False:
print(a_cell.address) # Or use .column if you need the column number.
wb.close()
如果您的 sheet 的第一行是您不想获取其单元格地址的 header 行,请使用 used_range[1:,:]
而不是 used_range
。您还可以指定一列而不是 used_range
.