Word VBA编制矩形溢洪道水力计算程序

来源 :城市建设理论研究 | 被引量 : 0次 | 上传用户:hb9527
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  中图分类号:K826.16 文献标识码:A 文章编号:
  
  1 概述
  1.1 溢洪道水力计算
  溢洪道水力计算是水库工程设计中的重要内容之一,分为上游明渠段和下游陡坡段。上游明渠段按明渠均匀流计算正常水深,下游陡坡段随着泄洪槽底比降及底宽的变化,通常按断面能量守恒来试算水深,试算工作量较大。本文通过Word程序内置宏语言VBA编制的矩形溢洪道水深计算程序可轻松解决试算工作量大的麻烦,为溢洪道设计方案选型提供了有力的计算工具,计算准确且大大提高工作效率。程序在安装Word2000以上版本的电脑上即可运行,利用Word程序内置宏语言VBA执行程序,在将工程设计数据及溢洪道几何尺寸数据输入后,点击“水力计算”命令按钮,可计算出溢洪道明渠段及各陡坡段(共设5段陡坡)水深、流速、掺气水深等数据,再点击“文本输出”命令按钮可输出溢洪道水深计算的文本及水面线计算表。
  关键词:word VBA编制溢洪道 计算程序
  
  1.2 VBA简介
  VBA(Visual Basic For Application)是微软公司Office办公软件中内置的宏语言,利用该语言可扩展Word、Excel等程序功能,創建专业程序工具。Word VBA的打开是在Word程序中点击下拉菜单“工具”→“宏”→“Visual Basic编辑器”。若要执行已创建的宏,首先需将下拉菜单“工具”→“宏”→“安全性”设为中或低,确定后关闭Word程序然后启动,再点击下拉菜单“工具”→“宏”→“宏…”,选取所要运行的宏名,点击“运行”命令按钮,即可运行所创建的宏。
  2 程序编制
  2.1 创建程序界面
  打开Word程序,点击下拉菜单“工具”→“宏”→“Visual Basic编辑器”,打开Microsoft Visual Basic文档,点击下拉菜单“插入”→“用户窗体”,出现UserForm窗体及工具箱,点击工具条上“属性窗口”按钮,调出属性窗口。利用工具箱及属性窗口,在UserForm窗体中创建27个标签控件、53个文字框控件、3个框架控件、3个命令按钮控件,创建的程序界面如图1所示。
  
  
  图1程序界面
  
  创建的主要控件属性见表1。
  表1 主要控件属性表
  
  
  2.2 程序代码编写
  ①双击用户窗体,进入程序代码编辑器,在“(通用)”中用Private语句声明129个程序变量,数据类型为Single。
  ②双击命令按钮“水力计算”控件,编写Click事件代码如下:
  Private Sub cmdcpu_Click()
  t1 = Val(TextBox1.Text)
  t2 = Val(TextBox2.Text)
  t3 = Val(TextBox3.Text)
  t4 = Val(TextBox4.Text)
  t5 = Val(TextBox5.Text)
  t6 = Val(TextBox6.Text)
  t7 = Val(TextBox7.Text)
  t8 = Val(TextBox8.Text)
  t9 = Val(TextBox9.Text)
  t10 = Val(TextBox10.Text)
  t11 = Val(TextBox11.Text)
  t12 = Val(TextBox12.Text)
  t13 = Val(TextBox13.Text)
  t14 = Val(TextBox14.Text)
  t15 = Val(TextBox15.Text)
  t16 = Val(TextBox16.Text)
  t17 = Val(TextBox17.Text)
  t18 = Val(TextBox18.Text)
  t19 = Val(TextBox19.Text)
  t20 = Val(TextBox20.Text)
  t21 = Val(TextBox21.Text)
  t22 = Val(TextBox22.Text)
  t23 = Val(TextBox23.Text)
  If t4 <= 0 Then MsgBox "计算数据必须输入后再点击计算按钮!", vbExclamation, "警告": Exit Sub
  If t5 <= 0 Then MsgBox "计算数据必须输入后再点击计算按钮!", vbExclamation, "警告": Exit Sub
  a = 1.05
  g = 9.8
  If t18 <= 0 Then MsgBox "请正确输入明渠段底宽!", vbExclamation, "警告": Exit Sub
  q = t4 / t18
  hk = (a * q ^ 2 / g) ^ (1 / 3)
  TextBox24.Text = Str(hk)
  
  '计算0-0断面参数及正常水深h0
  vk = q / hk
  Ek = hk + a * vk ^ 2 / 2 / g
  wk = t18 * hk
  xk = t18 + 2 * hk
  rk = wk / xk
  ck = 1 / t5 * rk ^ (1 / 6)
  j0 = vk ^ 2 / ck ^ 2 / rk
  Dim z0 As Single
  For z0 = 1 To 30000
  w0 = t18 * z0 / 1000
  x0 = t18 + 2 * z0 / 1000
  r0 = w0 / x0
  c0 = 1 / t5 * r0 ^ (1 / 6)
  s0 = (t6 ^ 2 + t12 ^ 2) ^ 0.5
  If s0 <= 0 Then MsgBox "请正确输入明渠段水平段长!", vbExclamation, "警告": Exit Sub
  i0 = t12 / s0
  If Int(w0 * c0 * (r0 * i0) ^ 0.5 * 10 + 5) / 10 = Int(t4 * 10 + 5) / 10 Then Exit For
  Next z0
  h0 = z0 / 1000
  If h0 >= 30 Then MsgBox "h0计算数据溢出错误!", vbExclamation, "警告"
  Label30.Caption = "正常水深h0=" + Str(h0) + "m"
  
  '计算1-1断面水力参数
  Dim z1 As Single
  For z1 = 1 To 30000
  If t19 <= 0 Then MsgBox "请正确输入陡坡1底宽!", vbExclamation, "警告": Exit Sub
  w1 = t19 * z1 / 1000
  v1 = t4 / w1
  x1 = t19 + 2 * z1 / 1000
  r1 = w1 / x1
  c1 = 1 / t5 * r1 ^ (1 / 6)
  s1 = (t7 ^ 2 + t13 ^ 2) ^ 0.5
  If s1 <= 0 Then MsgBox "请正确输入陡坡1水平段长!", vbExclamation, "警告": Exit Sub
  i1 = t13 / s1
  E1 = z1 / 1000 + a * v1 ^ 2 / 2 / g
  j1 = v1 ^ 2 / c1 ^ 2 / r1
  If Int((Ek + i1 * s1) * 10 + 5) / 10 = Int((E1 + (j0 + j1) / 2 * s1) * 10 + 5) / 10 Then Exit For
  Next z1
  h1 = z1 / 1000
  'If h1 >= 30 Then MsgBox "h1計算数据溢出错误!", vbExclamation, "警告": Exit Sub
  TextBox25.Text = Str(h1)
  
   (同理,可计算2-2至5-5断面水力参数,计算程序代码略)。
  
  End Sub
  
  ③双击命令按钮“文本输出”控件,编写Click事件代码如下:
  Private Sub cmdexp_Click()
  If t4 <= 0 Then MsgBox "计算数据必须输入后再点击计算按钮!", vbExclamation, "警告": Exit Sub
  If t5 <= 0 Then MsgBox "计算数据必须输入后再点击计算按钮!", vbExclamation, "警告": Exit Sub
  '计算文本输出
  ActiveDocument.Content.InsertAfter Text:=Chr(10) + Space(4) + "溢洪道水力计算"
  ActiveDocument.Content.InsertAfter Text:=Chr(10) + Space(4) + "一、基本资料"
  ActiveDocument.Content.InsertAfter Text:=Chr(10) + Space(4) + "设计工况下(" + Format(t1) + "年一遇洪水标准)水位:H=" + Format(t2) + "m,泄洪流量" + Format(t4) + "m3/s。"
   (此段程序代码略)
  '水面线计算表输出
  ActiveDocument.Content.InsertAfter Text:=Chr(10) + Space(35) + "水面线计算表"
  插入表格
  cmdexp.Enabled = False
  End Sub
  
  ④双击命令按钮“取消”控件,编写Click事件代码如下:
  Private Sub cmdcnl_Click()
  Unload frmyhd
  End Sub
  
  ⑤“插入表格”子程序代码编写如下:
  Private Sub 插入表格()
  (此段程序代码略)
  End Sub
  
  2.3 程序运行结果
  程序运行后,先输入设计数据及溢洪道几何尺寸数据,分为明渠段及5个陡坡段的水平段长、底高差、底宽,然后点击“水力计算”命令按钮,即可得计算结果的水深、流速、掺气水深等相关数据,点击“文本输出”按钮,可输出Word计算文本及水面线计算表格,点击“取消”命令按钮,则取消程序计算。
  3 结束语
  中小型水库除险加固工程中,溢洪道方案设计的水力计算如采用手工计算,每条溢洪道需2天计算时间。若使用本矩形溢洪道水力计算程序计算需时5分钟,且保证了计算的准确性,并可反复改变各段段长、高差、底宽,最后可输出计算文本与表格,大大减少计算时间与劳动强度,显著提高了工作效率。
其他文献
摘要:近年来,在我国桥梁施工过程中,混凝土极易受到自然因素以及外界施工因素的影响。因此,对桥梁工程中混凝土的施工养护工作尤为重要。本文就桥梁工程中混凝土的施工进行了相关的分析,并提出几点具体的混凝土养护措施,从而保持桥梁施工后的良好状态。   关键词:混凝土施工;养护   中图分类号: K928 文献标识码: A 文章编号:  引言:混凝土是建造桥梁的基础材料,然而混凝土在施工中极易受到外界施工因
期刊
【摘要】:工民建施工是建筑业施工的重要组成部分,近年来,我国工民建施工的技术和水平有了很大进步,建设速度、建设规模都在不断扩大。在工程建筑的质量中混凝土的质量控制尤其重要,混凝土质量的好坏,对工程造价、结构牢固、施工安全等影响重大,需要给予足够重视。  【关键词】:混凝土;工民建;质量控制  中图分类号:TU37 文献标识码:A 文章编号:     混凝土的施工质量直接决定着整个工民建的质量,是工
期刊
摘要:工程建设项目中建筑材料质量的优劣,直接影响到整个建筑工程的结构安全、质量等级、及建成后的使用功能。所以建筑工程项目中对建筑材料质量的监督、管理和控制在整个建设过程中都是至关重要的,起着非常关键的作用。  关键词:建筑工程;材料质量;监督管理控制  中图分类号:TU198文献标识码: A 文章编号:  在建筑施工过程中,各种不同的建筑材料受到资金、技术、工程进度、场地等因素的影响,需要分批次进
期刊
摘要:本文对城市道路旧沥青路面加铺设计的基本方法进行了总结,整理了一套较完整的设计方法,供设计人员借鉴与参考。  关键词:旧路调查旧路面评价加铺设计  中图分类号: S611 文献标识码: A 文章编号:  1概述  目前,我国城市道路车行道路面结构形式主要为沥青路面和水泥混凝土路面,不论哪种路面结构形式,使用一段时间后均会出现不同形式、不同程度的损坏。以沥青路面为例,随着使用时间的延续,其使用性
期刊
摘要:影响公路工程造价的因素很多,且贯穿于从立项到竣工的全过程,要行之有效地做好公路工程造价控制,必须从立项开始,认真做好各个阶段的造价控制。  关键词:公路建设工程 造价控制  中图分类号:TU723.5文献标识码: A 文章编号:  公路工程造价是指工程项目建设过程中所投入的全部物化劳动和活劳动的价值,以及生产过程中所产生的新价值的总称。即建设项目有计划地进行固定资产的再生产形成最低量流动资金
期刊
【摘要】文章结合工程实例,论述了基坑围护结构采用三轴水泥搅拌桩加加筋桩锚的支护体系,并在被动区局部采用单轴水泥搅拌桩加固,坑中坑采用一边水泥搅拌桩加固另三边放坡的设计及施工方案,具有一定参考价值。  【关键词】基坑围护三轴水泥搅拌桩加筋桩锚单轴水泥搅拌桩  中图分类号:TV551.4文献标识码: A 文章编号:  一、工程概况:  某工程地下1层,建筑面积113082m2,由8幢23-24层住宅楼
期刊
摘要:随着我国钢产量的增长和钢结构技术具备的显著优点,钢结构在建筑中的应用范围越来越广,目前很多厂房建筑也都已开始采用钢结构,而钢结构的制作和安装技术也随着迅速发展而得到重视,严谨的施工过程对钢结构厂房的质量起着重要的影响作用。本文探讨了钢结构厂房的制作和安装技术,也对制作和安装施工过程中的质量管理进行了简单分析。  关键词:厂房钢结构 制作 安装  中图分类号:TU391文献标识码: A 文章编
期刊
【摘要】当前随着市场环境的变化和人们需求的提升,建筑工程的成本也在升高,在房屋结构设计中应用结构设计优化技术能使有限的建筑资源得到最大化的利用,从而创造更大的经济效益。本文概述了房屋结构设计中的结构设计优化方法,提出了在房屋结构设计中的具体优化设计方案,阐述了在房屋结构设计中应用结构设计优化方案的意义。  【关键词】房屋结构设计;优化方案;应用;优化技术  中图分类号: TU318 文献标识码:
期刊
摘要:近些年来,随着经济的不断发展,我国建筑领域也获得了更大的发展空间,与此同时,科学技术的发展促进了各项施工方法和工艺的不断改进,这为我国建筑工程事业的发展提供了有效的技术支撑。钻孔粘接施工方法是现代建筑结构中常用的一种施工方法,尤其是在现浇框架结构的墙体施工方中,通常封闭砖墙与现浇钢筋混凝土结构柱体之间必须要符相关的设计要求,这时就需要通过设置拉筋的方法来实现。基于此,本文就主要针对墙体拉结筋
期刊
[摘要]:经济的发展见证了高层建筑在中国的萌芽、发展、壮大阶段。随着全球气候变化和地震、海啸、滑坡泥石流等自然灾害对于人类生存发展的威胁的加剧,人们越来越关注建筑物本身对于这些自然灾害的抵御作用。高层建筑的质量保证的关键是基础的设计,本文主要探讨高层建筑基础设计的主要考虑因素和应采用的相对合理的基础类型以供高层建筑基础结构设计人员参考。  [关键字] 高层建筑;基础设计;研究  中图分类号:TU2
期刊