PowerDesigner生成excel

PowerDesigner生成excel脚本代码

Option Explicit

   Dim rowsNum

   rowsNum = 0

‘-----------------------------------------------------------------------------

‘ Main function

‘-----------------------------------------------------------------------------

‘ Get the current active model

Dim Model

Set Model = ActiveModel

If (Model Is Nothing) Or (Not Model.IsKindOf(PdPDM.cls_Model)) Then

  MsgBox "The current model is not an PDM model."

Else

 ‘ Get the tables collection

 ‘创建EXCEL APP

 dim beginrow

 DIM EXCEL, SHEET

 set EXCEL = CREATEOBJECT("Excel.Application")

 EXCEL.workbooks.add(-4167)‘添加工作表

 EXCEL.workbooks(1).sheets(1).name ="test"

 set sheet = EXCEL.workbooks(1).sheets("test")

 ShowProperties Model, SHEET

 EXCEL.visible = true

 ‘设置列宽和自动换行

 sheet.Columns(1).ColumnWidth = 20 

 sheet.Columns(2).ColumnWidth = 40
 sheet.Columns(3).ColumnWidth = 30

 sheet.Columns(1).WrapText =true

 sheet.Columns(2).WrapText =true

 sheet.Columns(4).WrapText =true

 End If

‘-----------------------------------------------------------------------------

‘ Show properties of tables

‘-----------------------------------------------------------------------------

Sub ShowProperties(mdl, sheet)

   ‘ Show tables of the current model/package

   rowsNum=0

   beginrow = rowsNum+1

   ‘ For each table

   output "begin"

   Dim tab

   For Each tab In mdl.tables

      ShowTable tab,sheet

   Next

   if mdl.tables.count > 0 then

        sheet.Range("A" & beginrow + 1 & ":A" & rowsNum).Rows.Group

   end if

   output "end"

End Sub

‘-----------------------------------------------------------------------------

‘ Show table properties

‘-----------------------------------------------------------------------------

Sub ShowTable(tab, sheet)

   If IsObject(tab) Then

     Dim rangFlag

     rowsNum = rowsNum + 1

      ‘ Show properties

      Output "================================"

      sheet.cells(rowsNum, 1) = "表名"
      sheet.cells(rowsNum, 2) =tab.name

      sheet.Range(sheet.cells(rowsNum, 2),sheet.cells(rowsNum, 3)).Merge

      rowsNum = rowsNum + 1

      sheet.cells(rowsNum, 1) = "属性名"

      sheet.cells(rowsNum, 2) = "说明"

      sheet.cells(rowsNum, 3) = "字段类型"

      ‘设置边框

      sheet.Range(sheet.cells(rowsNum-1, 1),sheet.cells(rowsNum, 3)).Borders.LineStyle = "1"

Dim col ‘ running column

Dim colsNum

colsNum = 0

      for each col in tab.columns

        rowsNum = rowsNum + 1

        colsNum = colsNum + 1

      sheet.cells(rowsNum, 1) = col.name

      sheet.cells(rowsNum, 2) = col.comment

      sheet.cells(rowsNum, 3) = col.datatype

      next

      sheet.Range(sheet.cells(rowsNum-colsNum+1,1),sheet.cells(rowsNum,3)).Borders.LineStyle = "1" 

      rowsNum = rowsNum + 1

      Output "FullDescription: "       + tab.Name

   End If

End Sub
时间: 2024-08-24 16:53:32

PowerDesigner生成excel的相关文章

powerDesigner生成excel版本的数据库文件

今天收到一个需求,要把数据库设计给一个excel版本的,百度出来一个脚本文件,很好用发现,留个纪念 在pd中,shift+ctrl+X,打开脚本运行,脚本如下,附件也留了一份: '****************************************************************************** '* Title: pdm export to excel '* Purpose: To export the tables and columns to Exc

python读取和生成excel文件

今天来看一下如何使用python处理excel文件,处理excel文件是在工作中经常用到的,python为我们考虑到了这一点,python中本身就自带csv模块. 1.用python读取csv文件: csv是逗号分隔符格式 一般我们用的execl生成的格式是xls和xlsx  直接重命名为csv的话会报错: Error: line contains NULL byte insun解决方案:出错原因是直接是把后缀为xls的execl文件重命名为csv的 正常的要是另存为csv文件 就不会报错了 譬

PHP 使用 PHPExcel 库生成 Excel 文件

PHPExcel 是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言.可以使用它来读取.写入不同格式的电子表格,如 Excel (BIFF) .xls, Excel 2007 (OfficeOpenXML) .xlsx, CSV, Libre/OpenOffice Calc .ods, Gnumeric, PDF, HTML等等 调用代码示例: $php_excel = new PHPExcel(); $properties = $php_exc

PHP生成excel(1)

先到PHPExcel官网下载PHPExcel类 http://phpexcel.codeplex.com/ 把excel类包含进来,然后直接使用 <?php require "./PHPExcel/PHPExcel.php"; //实例化excel类 $objPHPExcel = new PHPExcel(); //获得当前活动sheet的操作对象 $objSheet = $objPHPExcel->getActiveSheet(); //给当前活动sheet设置名称 $o

一款强大的Office插件,教你如何自动生成Excel图表

项目背景: 在项目里面需要根据数据进行Excel的导出,但有时候不仅仅需要导出数据,而且还需要根据数据进行生成图表进行展示.之前的做法是先在模板里面进行公式的设定如下图1.1.这样就会遇到一个问题,那就是有一天需要不断的增加部门,一个两个还好,若突然需要加十几个或者二十几个,或者不是以部门为纵轴,那么可想而知改动就比较麻烦了,需要不断的修改模板,并且上传,而且这样的改法也比较死板,不适合.1.1图 如何解决 第一步:先查阅目前项目中所使用的NPOI相关的文档,看这个能不能支持相关的操作.很遗憾,

Java生成Excel文件

1.设计源码 /** * * @title:ExcelUtils.java * @Package:com.you.utils * @Description:<h3>一句话描述功能</h3> * @author:游海东 * @date:2015-3-21下午10:17:34 * @version V1.0 * */ package com.you.utils; import java.io.File; import java.io.IOException; import jxl.Wo

OpenXML简介和生成Excel

OpenXML是一个开放性的标准,基于熟知的技术:ZIP和XML OpenXML SDK安装以后,要在应用程序中添加以下引用. DocumentFormat.OpenXml WindowsBase SpreadsheetML是用于操作Excel文档.工作簿包含 工作簿部件(必须部件) 一张或多张工作表 图表 表 自定义XML 典型的电子表格元素如图所示 一个简单生成Excel的例子 1 public class CreateXlsx 2 { 3 public static void Create

c# mvc如何生成excel

我们知道mvc可以通过js生成excel文件,同样在后台c#中一样可以生成excel文件. 首先我们要在后台中写如下方法: [HttpGet]public FileResult excel_generation(string userid,string count,string order_id,string order_name,string rec_person,string height,string shoulder_width,string sleeve_length,string p

php用PHPExcel库生成Excel文档的例子

<?php require_once '../libs/PHPWord/PHPWord.php'; require_once '../libs/PHPWord/PHPWord/IOFactory.php'; require_once '../../config.php'; // New Word Document $PHPWord = new PHPWord(); $objExcel->getProperties()->setCreator("office 2003 excel