ABAP EXCEL 转 PDF

DATA: application TYPE ole2_object,

workbook TYPE ole2_object,

sheet TYPE ole2_object.

IF iv_pdf IS NOT INITIAL.

CREATE OBJECT application 'EXCEL.APPLICATION'.

CALL METHOD OF application 'WORKBOOKS' = workbook.

CALL METHOD OF workbook 'OPEN'

EXPORTING

#1 = output_path_xlsx.

CALL METHOD OF application 'WORKSHEETS' = sheet

EXPORTING

#1 = 1. "Sheet1

CALL METHOD OF sheet 'ACTIVATE'.

复制代码
  output_path_pdf = output_path_xlsx.
  REPLACE '.xlsx' WITH '.pdf' INTO output_path_pdf.
  REPLACE '.XLSX' WITH '.pdf' INTO output_path_pdf.
  CALL METHOD OF sheet 'ExportAsFixedFormat'
    EXPORTING
      #1 = 0
      #2 = output_path_pdf.


  CALL METHOD OF workbook 'CLOSE'.
  CALL METHOD OF application 'QUIT'.
  FREE OBJECT: application,workbook,sheet.

  CALL METHOD cl_gui_frontend_services=>file_exist
    EXPORTING
      file                 = output_path_pdf
    RECEIVING
      result               = DATA(l_res)
    EXCEPTIONS
      cntl_error           = 1
      error_no_gui         = 2
      wrong_parameter      = 3
      not_supported_by_gui = 4
      OTHERS               = 5.
  IF sy-subrc <> 0 OR l_res = space.
    MESSAGE |PDF另存失败| TYPE 'E'.
  ELSE.
    MESSAGE |PDF另存为{ output_path_pdf }| TYPE 'S'.
  ENDIF.


  CALL METHOD cl_gui_frontend_services=>file_delete
    EXPORTING
      filename             = output_path_xlsx
    CHANGING
      rc                   = l_dummy_rc
    EXCEPTIONS
      file_delete_failed   = 1
      cntl_error           = 2
      error_no_gui         = 3
      file_not_found       = 4
      access_denied        = 5
      unknown_error        = 6
      not_supported_by_gui = 7
      wrong_parameter      = 8
      OTHERS               = 9.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
          WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
ENDIF.

ENDMETHOD.

相关推荐
靖待1 小时前
【解决方法】python写Excel单元格截断长文本
python·excel·解决方法
爱喝水的鱼丶1 小时前
SAP-ABAP:SAP多表连接视图实战:内连接/外连接配置逻辑与性能优化技巧
运维·开发语言·学习·性能优化·sap·abap
DS随心转APP2 小时前
怎么让智谱清言生成 excel?借助 AI 导出鸭横向测评导出方法,一站式破解表格生成困扰
人工智能·ai·excel·deepseek·ai导出鸭
chatexcel1 天前
ChatExcel MAX 教程:AI Excel 数据清洗、异常核查与分析报告生成
人工智能·excel
葡萄城技术团队1 天前
模拟运算表全解析:从 Excel 的两变量限制到 SpreadJS 的不限变量 | SpreadJS 新版本 特性解析
excel
hoiii1871 天前
C# Txt/Excel/Access 导入导出工具
开发语言·c#·excel
小当家.1051 天前
Excel AI Converter:用 大模型 自动转换excel表格格式
人工智能·excel·工具
2501_930707781 天前
使用 C# 在 Excel 中合并并居中单元格
开发语言·c#·excel
ComPDFKit1 天前
2026 PDF 表格提取工具横评:15 款工具实测对比
pdf·excel·pdf表格提取·pdf to excel·pdf数据提取
技术小甜甜2 天前
[办公效率] Excel 表格越做越乱,先整理字段、格式还是公式?
数据库·excel·办公效率·数据整理