美文网首页随笔
Excel导入PDM表

Excel导入PDM表

作者: 朽木亦自雕 | 来源:发表于2019-03-08 17:02 被阅读0次

场景:

很多时候我们直接在pdm中设计一张表的时候,不如excel操作方便,所以就需要通过excel画table然后倒入pdm中变成table,废话不多

执行

pdm运行脚本(Ctrl+Shift+x),文件-->打开脚本-->RUN

代码:

excel2table.vbs

Option Explicit
 
Dim mdl ' the current model
Set mdl = ActiveModel
If (mdl Is Nothing) Then
   MsgBox "There is no Active Model"
End If
 
Dim HaveExcel
Dim RQ
RQ = vbYes 'MsgBox("Is Excel Installed on your machine ?", vbYesNo + vbInformation, "Confirmation")
If RQ = vbYes Then
   HaveExcel = True
   ' Open & Create Excel Document
   Dim x1  '
   Set x1 = CreateObject("Excel.Application")
   Dim currentpath '
   currentPath = createobject("Scripting.FileSystemObject").GetFolder(".").Path
   x1.Workbooks.Open currentPath&"\excel2pdm.xlsx"   '指定excel文档路径
   x1.Workbooks(1).Worksheets("Sheet1").Activate   '指定要打开的sheet名称
Else
   HaveExcel = False
End If
 
a x1, mdl
sub a(x1, mdl)
dim rwIndex   
dim tableName
dim colname
dim table
dim col
on error Resume Next
set table = mdl.Tables.CreateNew     '创建表
table.Name ="MyTableName" '指定表名,第一列的值
table.Code = "MyTableCode" 
table.Comment ="TableComment" '指定表注释,第二列的值
For rwIndex = 2 To 1000   '指定要遍历的Excel行标  由于第1行是表头,从第2行开始
        With x1.Workbooks(1).Worksheets("Sheet1")
            If .Cells(rwIndex, 1).Value = "" Then '如果遍历到第一列为空,则退出
               Exit For
            End If
             set col = table.Columns.CreateNew   '创建一列/字段
              col.Name = .Cells(rwIndex, 1).Value   '指定列名
             col.Code = .Cells(rwIndex, 2).Value   '指定列名               
             col.DataType = .Cells(rwIndex, 3).Value '指定列数据类型      
             col.Comment = .Cells(rwIndex, 4).Value  '指定列说明
                   If .Cells(rwIndex, 5).Value <>"" Then
                col.DefaultValue=.Cells(rwIndex,5).Value '默认值
             End If
             col.Precision = .Cells(rwIndex, 6).Value  '精度
                   If .Cells(rwIndex,7).Value="1" Then
                        col.Primary  = true  '是否主键
            End If      
        End With
Next
MsgBox "生成数据表结构共计 1 " , vbOK + vbInformation, "表"
 
Exit Sub
End sub

excel(注意文件名)放在和脚本同一个目录下的


excel2pdm.xlsx

脚本下载地址:
链接: https://pan.baidu.com/s/121Uw1fMz57w1EWIT0MFzqg 提取码: ys1e
如链接不可用,请私信我,并且附上您的邮箱。
网络上类似代码比较多,我针对修改了一个位置,增加了一些属性的读取,如有侵权,请联系我

相关文章

  • Excel导入PDM表

    场景: 很多时候我们直接在pdm中设计一张表的时候,不如excel操作方便,所以就需要通过excel画table然...

  • powerDesigner导出Excel脚本

    分目录递归,查找当前PDM下所有表,并导出Excel

  • 导入Excel表

    /// /// 导入excel表 /// /// /// private ...

  • 导入excel表

    excel 2007 2003版本导入数据库

  • 数据导入

    数据导入——Excel 文本导入 数据库导入数据量大选择透视表 网站导入

  • excel表数据的导入导出

    从excel表导入MySQL数据库 从MySQL数据库写入excel表 PostgreSQL可参考:

  • 将Excel数据导入SQLServer

    一、在Excel中创建工作表Person; 二、打开SqlServer的导入和导出数据; 三、将数据导入已存在表;

  • 2019-03-05

    继昨天完成的Excel表导出功能今天完成了Excel表导入功能,也是通过phpspreadsheet完成的附上代码...

  • Power Query如何处理隐藏工作表的操作?

    之前有对从Excel数据导入的方式有做解释,在导入Excel文件时可以有多个数据类型方式供导入选择,包括超级表,名...

  • mysql导入excel表

    手动导入excel表,总数存200条断开了,后来找的在此设置

网友评论

    本文标题:Excel导入PDM表

    本文链接:https://www.haomeiwen.com/subject/paarpqtx.html