ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 名课 - Power BI数据分析与可视化实战 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
Python自动化办公应用大全 Excel 2021函数公式学习大典 Kutools for Office 套件发布 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
123
返回列表 发新帖
楼主: yf_992258

[讨论] wps支持vba,重新测试了下,讨论下兼容性

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-10-23 19:27 | 显示全部楼层
本帖最后由 liucqa 于 2013-10-23 19:31 编辑

http://bbs.wps.cn/thread-22004642-1-1.html

二次开发简介

         二次开发,简单的说就是在现有的软件上进行定制修改,功能的扩展,然后达到自己想要的功能,不会改变原有系统的内核。一般的来说,一些大公司如IBM开发了一个大型的软件系统平台,根据不同的客户的需要,一些其它的中小公司为客户根据需求在该平台上进行第二次有针对性的开发 。

         WPS Office作为一款办公软件,为了适应不同用户的各种需求,也开发了一套独有的接口系统,在WPS Office三个模块:ET表格,WPS文字,WPP演示中分别有不同的API用来对程序元素进行操作。

ET, WPP, WPS所包含的接口内容分别是什么;


        WPS:指WPS Office中的文字组件,对应MSO中的Word组件,WPS中包含的接口主要是用来操作文档的一组API,可以通过API对文档的任何细节元素(文档内容、段落、格式、域、标签、表格图片、工具栏等等)进行操作,完全兼容MS-WORD的API接口;
        ET:指WPS Office中的电子表格组件,对应MSO中的Excel组件,ET中包含的接口主要是用来操作电子表格的一组API,可以通过API对表格的任何细节元素(单元格、公式、数组、数据筛选、外部数据链接等等)进行操作,完全兼容MS-EXCEL的API接口;
        WPP:指WPS Office中的演示组件,对用MSO中的PowerPoint组件,WPP中包含的接口主要是用来操作演示文稿的一组API,可以通过API对演示文稿的任何细节元素(幻灯片、模板、动画、播放设置等等)进行操作,完全兼容MS-PowerPoint的API接口;

为了让大家明白如何在不同的语言中调用我们WPS Office办公软件去进行二次开发,我们写了一些教程,希望对大家有帮助

TA的精华主题

TA的得分主题

发表于 2013-10-23 19:32 | 显示全部楼层
Wps文字常用的接口
接口名称

       
描述

Application
        该对象代表 WPS 应用程序,包含最高级对象的属性和方法
Bookmark
        代表单个书签
Bookmarks
        由 Bookmark 对象所组成的集合,该集合中的对象代表指定的选定内容、区域或文档中的书签
Cell
        代表单个表格的单元格
Comment

        代表单个批注
Dictionary

        代表一个自定义词典对象
Document

        该对象代表 WPS 的一篇文档
InlineShape

        该对象包含单个嵌入式图形
Range

        Range 对象代表文档中的一个连续范围
Selection

        该对象代表窗口或窗格中的当前所选内容
Tables

        该对象是由文档中的所有表格组成的集合

TA的精华主题

TA的得分主题

发表于 2013-10-23 19:32 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
ET常用的接口
接口名称

       
描述

Application

        该对象代表 ET 应用程序。包含可返回最高级对象的属性和方法
Chart
        代表工作簿中的图表。该图表既可为嵌入图表(包含在 ChartObject 中),也可为一个单独的图表工作表
Comment
        代表一条单元格批注
Filter
        代表单列的筛选
Interior
        代表对象的内部
Range
        代表某一单元格、某一行、某一列、某一选定区域(该区域可包含一个或若干连续单元格区域),或者某一三维区域
Shape
        该对象代表图形,可使用 ShapeRange 对象对该对象进行操作
Sheets
        该对象代表工作簿或当前活动工作簿中所有工作表的集合
Workbook
        代表 WPS表格 工作簿。Workbook 对象是 Workbooks 集合的成员
Window
        该对象代表 ET 应用程序中的窗口对象

TA的精华主题

TA的得分主题

发表于 2013-10-23 19:33 | 显示全部楼层
wps实例应用
      实现效果:创建一个工具栏,添加3个按钮名称分别为“文字”,“表格”,“图片”,并实现单击后在文档中添加文字,表格,图片功能。
      代码如下:(黄色突出显示为涉及较为重要的对象)
   

    Sub test()
    '声明一个工具栏对象
    Dim comb As CommandBar
    '添加一个新的工具栏并命名为“我的工具栏”
    Set comb = Application.CommandBars.Add("我的工具栏")
    '添加一个按钮 名字为“文字” 指定单击时调用宏“InsertText”
    With comb.Controls.Add(KsoControlType.ksoControlButton)
    .Caption = "文字"
    .OnAction = "InsertText"
    End With
    '添加一个按钮 名字为“图片” 指定单击时调用宏“InsertImg”
    With comb.Controls.Add(KsoControlType.ksoControlButton)
    .Caption = "图片"
    .OnAction = "InsertImg"
    End With
    '添加一个按钮 名字为“表格” 指定单击时调用宏“InsertTable”
    With comb.Controls.Add(KsoControlType.ksoControlButton)
    .Caption = "表格"
    .OnAction = "InsertTable"
    End With

    End Sub
    Sub InsertText()
    '写入文本
    Selection.TypeText "Kingsoft Office 2009"
    '居中对齐
    Selection.ParagraphFormat.Alignment = wpsAlignParagraphCenter
    '新段落
    Selection.TypeParagraph
    End Sub
    Sub InsertTable()
    '插入表格
    Dim mytable As Table
    '指定表格的行列数
    Set mytable = Selection.Tables.Add(Selection.Range, 3, 3)
    End Sub
    Sub InsertImg()
    '插入图片
    Dim myimg As InlineShape
    '图片路径为与文档同一目录下名字为"logo.png"
    Set myimg = Selection.InlineShapes.AddPicture(ThisDocument.Path & "logo.png")
    End Sub

TA的精华主题

TA的得分主题

发表于 2013-10-23 20:12 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-10-24 20:37 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
liucqa 发表于 2013-10-23 19:33
wps实例应用
      实现效果:创建一个工具栏,添加3个按钮名称分别为“文字”,“表格”,“图片”,并实 ...

谢谢老大热心指点!
我下载了WPS开发团队写的VBA二次开发帮助文档,用WPS2012行业增强版的ET运行里面的示例,结果好多示例都通不过!真不知道WPS的人是怎么写出这些文档的。难道他们用的是专门自用的WPS版本?!晕!

TA的精华主题

TA的得分主题

发表于 2013-12-1 09:28 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
顶一个!楼主的研究精神值得学习!更难能可贵的是能把研究与大家分享,其实本人非常期待国产产品能成为我手头必不可少的工具,但是现实很无奈,我不得不使用MSOffice,因为我要使用VBA,虽然我用的层次很低,但是这把利剑的功效太强大了,没有它累死我都完不成那些繁琐的工作。只是楼主用的是专业版测试的,不知道个人免费版能录制和运行VBA不?

TA的精华主题

TA的得分主题

发表于 2017-5-17 09:34 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
WPS中只要安装了VBA,就支持。一般只有WPS专业版自带有VBA,其它WPS版本要单独安装VBA。

TA的精华主题

TA的得分主题

发表于 2022-5-3 22:45 | 显示全部楼层
lxlyhu 发表于 2017-5-17 09:34
WPS中只要安装了VBA,就支持。一般只有WPS专业版自带有VBA,其它WPS版本要单独安装VBA。

应该属于VBA工具包
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-12-22 03:13 , Processed in 0.023046 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表