马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码一直报错:'str' object has no attribute 'rows',不知道到底啥问题?import openpyxl
from PIL import ImageGrab
# 打开 Excel 文件
workbook = openpyxl.load_workbook(r'C:\Users\Administrator\Desktop\text.xlsx')
# 选择要截图的工作表
worksheet = workbook['试试']
# 定义截图区域的坐标
left, upper, right, lower = 0, 0, 2, 9
# 获取工作表的尺寸
rows, cols = worksheet.dimensions.rows, worksheet.dimensions.cols
# 创建一个与工作表相同尺寸的图像
image = ImageGrab.grab(bbox=(left, upper, right, lower))
# 保存图像到文件
image. Save('example.png')
代码中出现了错误,因为在获取工作表的尺寸时,使用了 worksheet.dimensions.rows ,但是 worksheet.dimensions 返回的是一个字符串类型,而字符串类型没有 rows 属性。可以使用 worksheet.max_row 和 worksheet.max_column 来获取工作表的最大行数和最大列数。
修改后的代码如下:
import openpyxl
from PIL import ImageGrab
# 打开 Excel 文件
workbook = openpyxl.load_workbook(r'C:\Users\Administrator\Desktop\text.xlsx')
# 选择要截图的工作表
worksheet = workbook['试试']
# 定义截图区域的坐标
left, upper, right, lower = 0, 0, 2, 9
# 获取工作表的尺寸
rows, cols = worksheet.max_row, worksheet.max_column
# 创建一个与工作表相同尺寸的图像
image = ImageGrab.grab(bbox=(left, upper, right, lower))
# 保存图像到文件
image.save('example.png')
|