明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2313|回复: 6

讨论一下2005新功能的编程-表格生成及格式设置

[复制链接]
发表于 2004-3-29 21:39:00 | 显示全部楼层 |阅读模式
  1. '有关表格的VBA编程
  2. '生成表格,填写文字并设置框线宽度 '以下例子生成一个3行4列的表格,并将第二行和第三行的4列各合并成一列
  3. Sub mcAddTabel()
  4.        Dim Table As AcadTable
  5.        Dim InsertionPoint As Variant
  6.        InsertionPoint = ThisDrawing.Utility.GetPoint(, vbCrLf & "请选择表格插入点:")
  7.        Dim NumRows As Double, NumColumns As Double, _
  8.                RowHeight As Double, Colwidth As Double
  9.        NumRows = 3: NumColumns = 4 '行数和列数
  10.        RowHeight = 10: Colwidth = 25 '行高及列宽
  11.        Set Table = ThisDrawing.ModelSpace.AddTable _
  12.                                (InsertionPoint, NumRows, NumColumns, RowHeight, Colwidth)
  13.        '取消原先表格格式中的首行合并
  14.        Table.UnmergeCells 0, 0, 0, 3   '按顺序为合并的起始行号、结束行号、起始列号、结束列号
  15.        '将第二行的三列合并成一列
  16.        Table.MergeCells 1, 1, 0, 3   '按顺序为合并的起始行号、结束行号、起始列号、结束列号
  17.        Table.MergeCells 2, 2, 0, 3
  18.        '在表格中写入文字
  19.        Table.SetText 0, 0, "{\fSimSun|b0|i0|c134|p2;明}"
  20.        Table.SetText 0, 1, "{\fSimSun|b0|i0|c134|p2;经}"
  21.        Table.SetText 0, 2, "{\fSimSun|b0|i0|c134|p2;通}"
  22.        Table.SetText 0, 3, "{\fSimSun|b0|i0|c134|p2;道}"
  23.        Table.SetText 1, 0, "{\fSimSun|b0|i0|c134|p2;VBA编程技术}"
  24.        Table.SetText 2, 0, "{\fSimSun|b0|i0|c134|p2;%<\AcVar Date \f ""yyyy年M月d日"">%}"
  25.        '设置表外框线宽度,宽度的设置有点麻烦,因为表格被分成三个功能部分 _
  26.          最顶一行为标题行(acTitleRow),第二行为行头(acHeaderRow) _
  27.          剩下的就是数据行(acDataRow)了,而这三种都必须单独设置
  28.        ThisDrawing.SetVariable "LWDISPLAY", 1
  29.        Table.SetGridLineWeight acHorzTop + acVertLeft + acVertRight, _
  30.                          acTitleRow, acLnWt050
  31.        Table.SetGridLineWeight acHorzBottom + acVertLeft + acVertRight, _
  32.                          acDataRow, acLnWt050
  33.        Table.SetGridLineWeight acVertLeft + acVertRight, _
  34.                          acHeaderRow, acLnWt050
  35. End Sub
生成的表格如下图:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2004-3-29 22:48:00 | 显示全部楼层
有了表格的功能,制表确实方便了点,不过其数据计算的功能还是太差,可以考虑参照Excel的部分功能,将其移植到ACAD中,比如公式计算、数据关联、数据的导入和导出等。
发表于 2004-3-30 08:46:00 | 显示全部楼层
建议调整一下版块,


用VB写Arx程序(或C#)值得大力推广.


VB是最方便和最丰富的编程语言,Arx是功能最强的二次开发工具.两者结合在一起,值得推广应用.
发表于 2004-4-1 21:58:00 | 显示全部楼层
goldenshin发表于2004-3-30 8:46:00建议调整一下版块, 用VB写Arx程序(或C#)值得大力推广. VB是最方便和最丰富的编程语言,Arx是功能最强的二次开发工具.两者结合在一起,值得推广应用.

有这样的方法?能不能给点提示。
发表于 2004-4-9 19:17:00 | 显示全部楼层
支持!!!!
发表于 2013-1-9 15:22:11 | 显示全部楼层
Table.SetText 0, 0, "{\fSimSun|b0|i0|c134|p2;明}"
       Table.SetText 0, 1, "{\fSimSun|b0|i0|c134|p2;经}"
       Table.SetText 0, 2, "{\fSimSun|b0|i0|c134|p2;通}"
       Table.SetText 0, 3, "{\fSimSun|b0|i0|c134|p2;道}"
       Table.SetText 1, 0, "{\fSimSun|b0|i0|c134|p2;VBA编程技术}"
       Table.SetText 2, 0, "{\fSimSun|b0|i0|c134|p2;%<\AcVar Date \f ""yyyy年M月d日"">%}"
"{\fSimSun|b0|i0|c134|p2;%<\AcVar Date \f ""yyyy年M月d日"">%}" 是什么意思
发表于 2013-3-13 16:33:36 | 显示全部楼层
收下了改改做个自己的表格。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 15:56 , Processed in 0.178788 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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