删除 Excel 工作表中的所有 OLE 对象

OleObjects – Clear(OLE 对象清除)操作将从指定工作表中删除所有 OLE(对象链接与嵌入)对象,同时保持单元格数据不变。此操作可用于清理旧版电子表格,或为重新分发工作簿做准备。


前置条件

注意:该操作具有幂等性——即使工作表中已无 OLE 对象,调用该接口仍会返回成功状态 200 OK


HTTP 请求

DELETE https://api.aspose.cloud/v3.0/cells/{name}/worksheets/{sheetName}/oleobjects

路径参数

名称 类型 是否必填 描述
name 字符串 ✔️ 工作簿文件名称。
sheetName 字符串 ✔️ 工作表名称。

查询参数

名称 类型 是否必填 描述
folder 字符串 可选 工作簿所在文件夹。
storageName 字符串 可选 工作簿所在的存储空间名称。

请求头

请求头
Authorization Bearer <jwt token>
Accept application/json
Content-Type application/json

请求示例(cURL)

curl -v "https://api.aspose.cloud/v3.0/cells/Embedded_OleObject_Sample_Book1.xlsx/worksheets/Sheet1/oleobjects?folder=Samples&storageName=MyStorage" \
     -X DELETE \
     -H "Authorization: Bearer <jwt token>" \
     -H "Accept: application/json" \
     -H "Content-Type: application/json"

请将 <jwt token> 替换为有效的访问令牌,并根据需要调整 folderstorageName 参数。


成功响应

{
  "Code": 200,
  "Status": "OK"
}

HTTP 状态码说明

状态码 含义 描述
200 OK(成功) 操作成功执行;响应中包含操作详情。
400 Bad Request(错误请求) 缺少或无效的参数(例如不支持的文件类型)。
401 Unauthorized(未授权) JWT 令牌无效或缺失。
413 Payload Too Large(请求实体过大) 上传文件超出大小限制。
500 Internal Server Error(服务器内部错误) 服务器发生意外错误。

SDK 示例

以下代码片段展示了如何使用官方 Aspose.Cells Cloud SDK 调用 DeleteWorksheetOleObjects 方法。请将占位符(如 <YOUR_TOKEN><FILE_NAME> 等)替换为您的实际数据。

语言 示例
C#
显示 C# 示例csharp\nusing Aspose.Cells.Cloud.SDK.Api;\nusing Aspose.Cells.Cloud.SDK.Model;\n\nvar config = new Configuration { AccessToken = "<YOUR_TOKEN>", BasePath = "https://api.aspose.cloud" };\nvar api = new OleObjectsApi(config);\napi.DeleteWorksheetOleObjects(name: "Sample.xlsx", sheetName: "Sheet1", folder: "Samples", storageName: null);\n
Java
显示 Java 示例java\nimport com.aspose.cells.cloud.api.OleObjectsApi;\nimport com.aspose.cells.cloud.client.ApiClient;\nimport com.aspose.cells.cloud.client.Configuration;\n\nConfiguration config = new Configuration();\nconfig.setAccessToken("<YOUR_TOKEN>");\nconfig.setBasePath("https://api.aspose.cloud");\nOleObjectsApi api = new OleObjectsApi(new ApiClient(config));\napi.deleteWorksheetOleObjects("Sample.xlsx", "Sheet1", "Samples", null);\n
Python
显示 Python 示例python\nfrom asposecellscloud import ApiClient, Configuration, OleObjectsApi\n\nconfig = Configuration()\nconfig.access_token = '<YOUR_TOKEN>'\nconfig.host = 'https://api.aspose.cloud'\nclient = ApiClient(configuration=config)\napi = OleObjectsApi(client)\napi.delete_worksheet_ole_objects(name='Sample.xlsx', sheet_name='Sheet1', folder='Samples')\n
Node.js
显示 Node.js 示例javascript\nconst { OleObjectsApi, Configuration } = require('asposecellscloud');\n\nlet config = new Configuration({ accessToken: '<YOUR_TOKEN>', basePath: 'https://api.aspose.cloud' });\nlet api = new OleObjectsApi(config);\napi.deleteWorksheetOleObjects('Sample.xlsx', 'Sheet1', { folder: 'Samples' })\n .then(() => console.log('All OLE objects deleted'))\n .catch(err => console.error(err));\n
Go
显示 Go 示例go\npackage main\nimport (\n "context"\n "github.com/aspose-cells-cloud/aspose-cells-cloud-go/v3"\n)\n\nfunc main() {\n cfg := asposecellscloud.NewConfiguration()\n cfg.AccessToken = "<YOUR_TOKEN>"\n cfg.Host = "https://api.aspose.cloud"\n api := asposecellscloud.NewOleObjectsApi(cfg)\n _, err := api.DeleteWorksheetOleObjects(context.Background(), "Sample.xlsx", "Sheet1", map[string]interface{}{ "folder": "Samples" })\n if err != nil { panic(err) }\n println("All OLE objects deleted")\n}\n

所有支持语言的完整源文件可在 Aspose.Cells Cloud GitHub 仓库 获取。


错误与处理

对于临时性 500 错误,建议实现指数退避重试逻辑。


常见问题

Q1:是否必须指定 folderstorageName 参数?
A: 否。若未指定,Aspose Cloud 将默认使用默认存储空间及根目录。

Q2:能否仅删除某个特定单元格中的 OLE 对象?
A: 本端点将删除工作表中的所有 OLE 对象。如需删除单个对象,请使用 删除特定 OLE 对象 操作。

Q3:如果工作簿处于锁定编辑状态,会发生什么?
A: API 将返回 400 Bad Request,并提示文件已被锁定。请确保调用端点前该文件未被其他程序占用。

Q4:工作簿是否有大小限制?
A: 服务遵循 Aspose Cloud 的通用文件大小限制(当前单个文件上限为 2 GB)。更大的文件可能需要拆分或分块处理。


最佳实践


相关操作

请使用页面底部的导航链接在相关 API 操作之间切换。