1、Excel 在水文要素计算中的应用摘要:Excel 是办公自动化软件 Office的重要组成部分之一,是Windows操作平台上的电子表格软件,具有强大的制作表格、处理数据、分析数据、创建图表等功能,在日常生活工作中得到了大量的应用。目前陕西水文工作正向自动测报迈进,但仍有不少水文测验项目是人工测量,计算。利用 Excel来进行一些水文要素的计算,不但适应了现阶段工作要求,还提高了工作效果。 关键词:Excel 流量 泥沙 计算 电子表格 Excel有很多版本,现在以使用最广的 Excel 2000在北洛河 头水文站的使用,来谈谈它在水文要素计算中的应用。 1. Excel2000的运行 软件
2、运行环境:Windows 98、Windows Me、Windows 2000、Windows XP。硬件环境:一般现在的计算机都能满足,只要能安装 Windows 98即可,没有特别要求。除安装 Excel 2000外,还应安装 Visual Basic6.0。这样就可以创建自定义函数解决数据处理上的一些问题。 2. 问题处理 以前西安水文局就有人将 Excel制作的电子表格用于水流沙计算。目前为提高资料精度水文资料整编规范SL247-1999 中规定水文数据采用“四舍六入,逢五奇进偶舍”的方法处理,同时还限制了相应的有效数字位数。这对于用电子表格计算水文资料提出了高的要求,最好的解决办法是
3、利用 Visual Basic编写的自定义函数和 Excel内置函数来解决数据处理问题。其中对“四舍六入”的处理自定义函数为: Function jinghe(num As Double, DIG As Byte, Optional TorV As Boolean) As Variant Dim Temp1 As Double Dim TFM As String Dim Temp2 As String Dim Tempoff As Double If num = 0 Then Temp1 = 0 Temp2 = “0“ GoTo ExitFn End If With Application.W
4、orksheetFunction If num 0.1 Then DIG = DIG - 1 End If Tempoff = Abs(-Right(num / 10 (Int(.Log(Abs(num) - DIG + 1), 2) = 0.5) _ * (-Right(Int(Abs(num) / 10 (Int(.Log(Abs(num) - DIG + 1), 1) _ Mod 2) = 0) * 10 Int(.Log(Abs(num) - DIG + 1) Temp1 = .Round(Abs(num), -(Int(.Log(Abs(num) - DIG + 1) Temp1 =
5、 Temp1 - Tempoff Trn = Trn And (10 Int(.Log(Temp1) = Temp1 And Temp1 Abs(num) If DIG 14 And Trn Then Temp2 = “有效位数不能太多“ GoTo ExitFn End If If DIG = 1 And Int(.Log(Abs(Temp1) = 0 And Not Trn Then TFM = “ Else If Not (DIG = 1 And Int(Temp1) = Temp1 And Not Trn) Then TFM = TFM “.“ TFM = TFM .Rept(“0“,
6、DIG + Abs(Trn) - 1) End If TFM = “0“ TFM If Int(.Log(Temp1) 0 Then TFM = TFM .Rept(“0“, -Int(.Log(Temp1) ElseIf Int(.Log(Temp1) 0 Then TFM = TFM “E+#“ End If Temp1 = Temp1 * Sgn(num) Temp2 = .Text(Temp1, TFM) End With ExitFn: If TorV Then jinghe = Temp2 Else jinghe = Temp1 End If End Function 自定义函数形
7、式为:jinghe(数值,保留有效位数,返回文本或数值),其中根据 头站特点对数值小于 1时的情况已作了设定,在流量、泥沙数据计算过程中应用良好。3. 流量、输沙率计算 用 Excel创建流量计算表(详见附表一“ 头(四)站测深、测速记载及流量计算表” ) ,其中在宏中加入以上自定义函数,在计算中符合四舍六入的要求,表下方的统计栏极值挑选采用 max函数在测得水深、测点流速中自动挑选。一般一个站的测流垂线基本固定,这样再次使用只需把起点距、测得水深、信号个数、历时输入表格中相应空格,流量就会顷刻算出,完全符合规范要求。输沙率计算(见附表二)比流量计算简单,方法基本同流量计算。 4. 关系曲线检
8、验及标准差计算 按照水文资料整编规范SL247-1999 规定水位流量、单断沙关系曲线,关系点在 10各以上就必须进行三种检验和标准差计算。利用 Excel表格制作计算表(见附表三、四: 头(四)站 2005年单断沙关系曲线检验及标准差计算表,水位流量与此相同在此不再赘述),其中点据数 n统计采用 COUNT(B5:B34),正负号统计采用 COUNTIF(G5:G34,“+“),计算过程采用了四舍六入自定义函数。再次使用时只要输入断沙实测和查线点据,第二张的标准差、不确定度计算立马产生。 5. 结 语 在 头站 Excel还用于断面图绘制,报汛曲线绘制等方面。另外目前网上可以看到不少编制好的流量、标准差计算程序。但是我们的测站计算机刚开始普及,符合陕西水文计算要求,职工容易掌握,与手工计算表格、方法、流程相适应的却很少。以上利用 Excel电子表格计算的方法,由于直观符合手算要求,提高了工作效率,经在状头站试用大家普遍能接受。同时体会到一般职工,大可不必对计算机畏惧,即使不懂英语,只要认真学习,勤于动脑,同样能用一些应用软件来解决工作中的实际问题,这样才能从真正意义上使计算机在我们测报工作得到普遍应用。以上见解由于时间仓促、水平有限肯定有很多不足敬请指正。