浅析Excel VBA在中小河流河道水面线分析中应用.docVIP

浅析Excel VBA在中小河流河道水面线分析中应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅析Excel VBA在中小河流河道水面线分析中应用

浅析Excel VBA在中小河流河道水面线分析中应用    摘要:Excel VBA是基于Excel的一套程序语言。应用Excel VBA 进行电算是减轻设计人员负担,提高设计效率的有效方法。    关键词:Excel VBA;表格;中小河流;水面线;    Abstract: Excel VBA is a programming language based on Excel. Application of Excel VBA electric regarded as an effective way to alleviate the burden on the designers to improve design efficiency.    Keywords: Excel VBA; form; medium and small rivers; the water line;   中图分类号:TU195 文献标识码:A文章编号:2095-2104(2012)05-0020-02       Visual Basic for Applications(VBA)是一种Visual Basic的一种宏语言,VBA 是基于Visual Basic 发展而来的,它们具有相似的语言结构。Visual Basic 作为一套独立的 Windows 系统开发工具,可用于开发Windows 环境下的各类应用程序,是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言。它具有高效率、简单易学及功能强大的特点。VB 的程序语言简单、便捷,利用其事件驱动的编程机制,可以高效、快速地编制出 Windows 环境下功能强大、图形界面丰富的应用软件系统。    近年来中小河流开发治理工程,在全国各大省市大量开展,按照 “十二五” 规划,期间需完成5000多条中小河流重点河段的治理任务,涉及8000多个项目,时间紧、任务重、设计质量要求高,利用Excel VBA分析计算中小河流河道水面线,是提高设计效率的有效方法。    一、河道水面线计算方法    本文河道水面线采用天然河道非均匀渐变流的伯努利方程进行计算。   Z上+α上= Z下+α下+ hw    式中:Z上、V上———上游断面的水位、流速;    Z下、V下———下游断面的水位、流速;    hw=hy+hj ———两断面间水头损失;    hy=(J上+J下)ΔL /2———沿程水头损失;    ——沿程摩阻坡度;    ε———两断面平均流速、平均流速系数;    ———平均水力半径;    ΔL———两断面间距;    α下———系数,取1.0;   二、利用Excel VBA程序语言计算    首先新建一个Excel文档,在表格第6行输入“起始水位”、“河道桩号”、“河段长度”、“河道底宽”、“平台高度”、 “平台宽”、 “平台以上坡比”、 “河床糙率” 、“流量”标题项,在第7-18行输入相关数据。    在表格第84、85行输入“断面编号”、“河道桩号”、“断面水位”、“ 河底高程”、“ 断面流速v”、“ 河段长度l”等,    E86至E100=“=IF((C86-D86)F7,E7*F7+((E7+2*G7)*2+(C86-D86-F7)*H7*2)   *(C86-D86-F7)/2,E7*(C86-D86))”    F86至F100=“=IF((C86-D86)F7,E7+2*F7+2*G7+((C86-D86-F7)^2+   ((C86-D86-F7)*H7)^2)^0.5,E7+2*(C86-D86))”    N87至N100=“=K87^2/(G87^(1/6)/I87)^2/G87”    在菜单栏位置右击点击“窗体”,弹出窗体对话框,选择“按钮”,创建一按钮于表格左上角位置,将按钮名称改为“计算”。       点击菜单栏中“工具”—“宏”—“Visual Basic编辑器”,弹出对话框;双击Excel文档中“计算”按钮,弹出代码编辑对话框,先定义局部变量i、j为长整型,利用For-Nxet循环语句内嵌两个IF语句,通过C87单元格数据不断试算,使得M87与S87单元格内的数据一致(保留两位小数),进行下一行数据试算,所求得的断面水位Z即为河道水位,编辑代码如下:    Private Sub CommandButton1_Click()    Dim i As Long定义局部变量i为长整型    Dim j As Long定义局部变量j为长整型    i = 1附值i=1    Cells(87, 3) = Cells(86, 3) - 0.5附值表格C87=C86-0

文档评论(0)

fangsheke66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档