当前位置: 首页 > wzjs >正文

网站开发课程设计说明书资源猫

网站开发课程设计说明书,资源猫,物流商 网站建设方案,做彩票的网站https://download.csdn.net/download/chenchihwen/90621615https://download.csdn.net/download/chenchihwen/90621615 业务场景 这个代码适用于需要定期从 MySQL 数据库中获取数据并导入到 Excel 进行分析和处理的场景。例如,财务人员需要从数据库中提取财务数据&…

https://download.csdn.net/download/chenchihwen/90621615https://download.csdn.net/download/chenchihwen/90621615

业务场景

这个代码适用于需要定期从 MySQL 数据库中获取数据并导入到 Excel 进行分析和处理的场景。例如,财务人员需要从数据库中提取财务数据,或者业务人员需要获取销售数据等。通过在 “SQL” 工作表中编写不同的 SQL 查询语句,可以灵活地获取不同的数据,而代码会自动将查询结果导入到 Excel 中,方便进一步的分析和报表制作。

为了让用户比较方便的组织出正确的 sql

在SQL 页面布置了 简单的 SQL 筛选语句, 通过 【B4】的内容 与 E3: G9 的内容 写出 SQL

  1. 数据筛选与查询语句生成:提到 “筛选多少数据 TOP 10 放 10 先少量捞,取消捞全部” ,说明有数据筛选的需求,最开始计划先筛选出 10 条数据进行处理,后续可能会取消限制获取全部数据。=CONCATENATE("SELECT"," * FROM ",B12,IF(G3="","",IF(UPPER(H3)="X"," WHERE "&E3&F3&G3," WHERE "&E3&F3&"'"&G3&"'")),IF(G4="","",IF(UPPER(H4)="X"," AND "&E4&F4&G4," AND "&E4&F4&"'"&G4&"'")),,IF(G5="","",IF(UPPER(H5)="X"," AND "&E5&F5&G5," AND "&E5&F5&"'"&G5&"'")),IF(G6="","",IF(UPPER(H6)="X"," AND "&E6&F6&G6," AND "&E6&F6&"'"&G6&"'")),IF(G11>0," Limit "&G11," ;")) 这一长串公式是在动态生成 SQL 查询语句。根据不同单元格(如 G3、H3、E3 等)的值来决定是否添加 WHERE 条件以及具体的条件内容,并且根据 G11 的值决定是否添加 LIMIT 子句来限制查询结果的数量。

【B4】 格内容是个下拉字段是 数据验证

 

code = 

当点击 数据更新时,会根据 SQL 的内容 通过 ODBC 获取 数据内容,并存放在 RAW sheet 中

VBA 的源码如下

Sub SQLCC()'Dim SQL As StringApplication.ScreenUpdating = FalseSheets("SQL").Visible = TrueCells(1, 7) = Now()Sheets("SQL").SelectSQL = Range("B13").ValueSheets("Raw").SelectCells.SelectSelection.ClearContentsWith ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _"ODBC;dsn=ECS;database=ecs_fssc;Server=10.153.36.4;port=3306;UID=userID;PASSWORD=yourpassword;" _, Destination:=Range("$A$1")).QueryTable.CommandType = xlCmdSql.CommandText = Array(SQL).RowNumbers = False.FillAdjacentFormulas = False.PreserveFormatting = True.RefreshOnFileOpen = False.BackgroundQuery = True.RefreshStyle = xlInsertDeleteCells.SaveData = True.AdjustColumnWidth = False.RefreshPeriod = 0.PreserveColumnInfo = True.ListObject.DisplayName = "Query5".Refresh BackgroundQuery:=FalseEnd WithSheets("Raw").Cells.EntireColumn.AutoFitEnd Sub

整体功能概述

这段 VBA 代码 SQLCC 的主要功能是从指定的 MySQL 数据库中执行 SQL 查询,并将查询结果导入到 Excel 的 “Raw” 工作表中,最后自动调整 “Raw” 工作表的列宽以适应数据。代码通过读取 “SQL” 工作表中的 SQL 查询语句,使用 ODBC 连接到数据库,执行查询并将结果填充到 “Raw” 工作表,同时对查询表的一些属性进行了设置。

代码分段解释

1. 变量声明与屏幕更新设置

vba

Dim SQL As String
Application.ScreenUpdating = False

  • Dim SQL As String:声明一个字符串类型的变量 SQL,用于存储从工作表中读取的 SQL 查询语句。
  • Application.ScreenUpdating = False:关闭 Excel 的屏幕更新功能,这样在代码执行过程中,Excel 界面不会实时刷新,从而提高代码的执行效率。
2. 显示工作表并记录时间

vba

Sheets("SQL").Visible = True
Cells(1, 7) = Now()
Sheets("SQL").Select
SQL = Range("B13").Value

  • Sheets("SQL").Visible = True:将名为 “SQL” 的工作表设置为可见状态。
  • Cells(1, 7) = Now():在当前活动工作表的第 1 行第 7 列(即 G1 单元格)记录当前的日期和时间。
  • Sheets("SQL").Select:选中 “SQL” 工作表。
  • SQL = Range("B13").Value:从 “SQL” 工作表的 B13 单元格中读取 SQL 查询语句,并将其赋值给变量 SQL
3. 清空 “Raw” 工作表内容

vba

Sheets("Raw").Select
Cells.Select
Selection.ClearContents

  • Sheets("Raw").Select:选中名为 “Raw” 的工作表。
  • Cells.Select:选中 “Raw” 工作表中的所有单元格。
  • Selection.ClearContents:清空选中单元格的内容,为导入新的查询结果做准备。
4. 创建并配置查询表

vba

With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _"ODBC;dsn=ECS;database=ecs_fssc;Server=10.153.36.4;port=3306;UID=ecs_fssc;PASSWORD=yuanian@123;" _, Destination:=Range("$A$1")).QueryTable.CommandType = xlCmdSql.CommandText = Array(SQL).RowNumbers = False.FillAdjacentFormulas = False.PreserveFormatting = True.RefreshOnFileOpen = False.BackgroundQuery = True.RefreshStyle = xlInsertDeleteCells.SaveData = True.AdjustColumnWidth = False.RefreshPeriod = 0.PreserveColumnInfo = True.ListObject.DisplayName = "Query5".Refresh BackgroundQuery:=False
End With

  • ActiveSheet.ListObjects.Add(...):在当前活动工作表(即 “Raw” 工作表)中添加一个新的查询表。
    • SourceType:=0:表示数据源类型为 ODBC 数据源。
    • Source:指定 ODBC 连接字符串,包含数据库的相关信息,如数据源名称(dsn=ECS)、数据库名(database=ecs_fssc)、服务器地址(Server=10.153.36.4)、端口号(port=3306)、用户名(UID=ecs_fssc)和密码(PASSWORD=yuanian@123)。
    • Destination:=Range("$A$1"):指定查询结果的起始位置为 “Raw” 工作表的 A1 单元格。
  • .CommandType = xlCmdSql:设置查询类型为 SQL 查询。
  • .CommandText = Array(SQL):将之前读取的 SQL 查询语句赋值给查询表的命令文本。
  • 后续一系列属性设置:
    • RowNumbers = False:不显示行号。
    • FillAdjacentFormulas = False:不自动填充相邻的公式。
    • PreserveFormatting = True:保留单元格的格式。
    • RefreshOnFileOpen = False:在打开文件时不自动刷新查询。
    • BackgroundQuery = True:允许在后台进行查询刷新。
    • RefreshStyle = xlInsertDeleteCells:刷新时插入或删除单元格以适应数据变化。
    • SaveData = True:保存查询结果数据。
    • AdjustColumnWidth = False:不自动调整列宽。
    • RefreshPeriod = 0:不设置自动刷新周期。
    • PreserveColumnInfo = True:保留列的信息。
    • .ListObject.DisplayName = "Query5":将查询表的显示名称设置为 “Query5”。
  • .Refresh BackgroundQuery:=False:立即刷新查询,不使用后台查询方式。
5. 自动调整列宽

vba

Sheets("Raw").Cells.EntireColumn.AutoFit

  • 选中 “Raw” 工作表中的所有单元格,并自动调整各列的宽度,使其适应列中的内容。
http://www.dtcms.com/wzjs/339035.html

相关文章:

  • 网站首页设计大赛网络营销推广机构
  • 网站建设经验交流发言seo是什么意思知乎
  • 哈尔滨做网站哪家便宜搜索引擎优化的方法
  • seo辅助seo分析报告
  • dwcs5怎么做动态网站后台sem竞价课程
  • 沙河企业做网站google关键词优化排名
  • qq临时会话网站已备案域名交易平台
  • 淘宝客商城网站建设广告营销策略
  • 网站建设就找桥三科技seo搜索引擎优化包邮
  • 怀化买房网站不收费的小说网站排名
  • 3m网站源码设计素材网站
  • 做网站的话术建站推广网站
  • 大学网站建设论文百度怎么进入官方网站
  • 南宁在百度上建网站seo优化工作怎么样
  • 织梦小说网站源wap站seo顾问服务福建
  • 浅谈顺丰的电子商务网站建设如何推广一个平台
  • 网站开发团队简介聚合搜索引擎入口
  • 深圳建设集团地址在哪里临沂seo公司
  • 上线了 建立网站百度外推排名
  • 素质课网站设计与建设自制网页
  • WordPress默认模板做的站营销型网站建设题库
  • 重庆网站制作一般需要多少钱江苏做网站的公司有哪些
  • 建站公司网站论坛app推广公司怎么对接业务
  • 室内装饰设计网站郴州seo快速排名
  • 昆明网站建设技术研发中心整合营销案例
  • 哪里可以接网站开发项目做十大培训机构教育培训机构哪家好
  • 单页网站怎么优化北京网络营销推广外包
  • 制作衣服的软件app百度移动排名优化软件
  • 个商个体户可以建设网站不上海网站建设seo
  • 电商网站建设方案网站建设公司推荐