找回密码
 立即注册

QQ登录

只需一步,快速开始

一博科技

中级会员

51

主题

147

帖子

568

积分

中级会员

积分
568
一博科技
中级会员   /  发表于:2023-6-28 13:57  /   查看:1003  /  回复:5
10金币
问题:打开Excel有多个sheet,有没有api可以获取到所有sheet是否有图片,如果有,则删除,即删除所有图片




当前是:sheet.pictures.all(),所有呢?

最佳答案

查看完整内容

您好,您提供的Excel文件中有四个sheet,其中只有第四个sheet才是有shape的。 测试代码如下: let spread = designer.getWorkbook(); let sheets = spread.sheets; for (const element of sheets) { const sheet = element; console.log(sheet.shapes.all()); }

5 个回复

倒序浏览
最佳答案
最佳答案
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-6-28 13:57:02
来自 6#

您好,您提供的Excel文件中有四个sheet,其中只有第四个sheet才是有shape的。

image.png873440246.png

测试代码如下:


    let spread = designer.getWorkbook();

    let sheets = spread.sheets;
    for (const element of sheets) {
      const sheet = element;
      console.log(sheet.shapes.all());
    }

SpreadJS 17.0.8 | GcExcel 7.1.0 已发布~
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-6-28 14:53:24
2#
您好,看上去可以通过遍历spread上所有的sheet,然后调用sheet.pictures.all()来删除了。
SpreadJS 17.0.8 | GcExcel 7.1.0 已发布~
回复 使用道具 举报
一博科技
中级会员   /  发表于:2023-6-28 16:50:55
3#
Joestar.Xu 发表于 2023-6-28 14:53
您好,看上去可以通过遍历spread上所有的sheet,然后调用sheet.pictures.all()来删除了。

不行,取不到,不是活动表格都是空的,能帮忙写个demo吗

0529-有图片.rar

1.34 MB, 下载次数: 28

回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-6-28 17:32:42
4#
您好,您尝试用sheet.shapes.all()来获取到所有的shape。

另外,可以用sheet.shapes.clear()接口来清除所有的shape。
SpreadJS 17.0.8 | GcExcel 7.1.0 已发布~
回复 使用道具 举报
一博科技
中级会员   /  发表于:2023-6-28 18:46:31
5#
Joestar.Xu 发表于 2023-6-28 17:32
您好,您尝试用sheet.shapes.all()来获取到所有的shape。

另外,可以用sheet.shapes.clear()接口来清除 ...

一样是空的,

image.png507265929.png
image.png511102904.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部