首页 > 编程语言 > 详细

excel的宏与VBA实践——建表语句

时间:2018-07-24 16:45:32      阅读:214      评论:0      收藏:0      [点我收藏+]

不带分区版本:V1.0:

Sub createTableDDL()
    自动创建建表语句
    定义换行和TAB
    Ln = Chr(13) + Chr(10)
    TB = Chr(9)
    定义脚本目录
    Dim dir AS String
    dir = "C:\CREATE_TABLE_DDL"
    Set FSOE = CreateObject("Scripting.FileSystemObject")
    If FSOE.folderexists(dir) = False Then
          MkDir dir
    End If
      
    调用脚本定义
    Set SqlFileDDL = FSOE.CreateTextFile("C:\CREATE_TABLE_DDL\create_table_ddl.sql", True)
    获得表名
    tableName = Trim(Cells(1, 2).Value)
    获得表注释
    tableComment = Trim(Cells(1, 4).Value)
    获得创建者
    createBy = Trim(Cells(1, 6).Value)
    Dim dt As Date
    dt = Format(Date, "yyyy-mm-dd")
    获得当前日期
    createDate = dt
    获得A列已使用的行数
    count_row_k = [A65536].End(xlUp).Row
    定义SQL
    SQL = "--创建者:" & createBy & Ln
    SQL = SQL & "--创建时间:" & createDate & Ln
    SQL = SQL & "DROP TABLE IF EXISTS " & tableName & " ;" & Ln
    SQL = SQL & "CREATE TABLE " & tableName & "("
    写入文件
    SqlFileDDL.WriteLine (SQL)
    For i = 3 To count_row_k
        If i = count_row_k Then
            col_name = TB & LCase(Cells(i, 2)) & " " & UCase(Cells(i, 4)) & " COMMENT ‘" & Trim(Cells(i, 3)) & "" & Ln & ")"
            SqlFileDDL.WriteLine(col_name)
            Exit For
        End If
        col_name = TB & LCase(Cells(i, 2)) & " " & UCase(Cells(i, 4)) & " COMMENT ‘" & Trim(Cells(i, 3)) & "‘,"
        SqlFileDDL.WriteLine(col_name)
    Next
    SqlFileDDL.WriteLine("COMMENT ‘" & tableComment & "")
    MsgBox("生成成功!生成路径为:" & dir)
End Sub

 

excel的宏与VBA实践——建表语句

原文:https://www.cnblogs.com/jiangbei/p/9360434.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!