用VBA自动计算水准测量的原始数据

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用VBA自动计算水准测量的原始数据

2007-02-09 17:51:30| 分类:默认分类| 标签:水准仪原是数据处理计算 exce vba |字号大中小订阅

Option Explicit

Private Sub gaocheng() '数据处理代码

Dim i, K, Pointer

Dim I_first As Integer, I_end As Integer

I_first = Sheet1.Range("H" & 4).Value

I_end = Sheet1.Range("H" & 5).Value

'开始行要为转点下一行,且转点前一行高程数据已经计算好.

If Sheet1.Range("D" & 1).Value = "1" Then

Pointer = MsgBox("数据已经存在,确定覆盖吗?", vbYesNo + vbInformation, "继续?")

If Pointer = vbNo Then

Exit Sub

End If

End If

K = Sheet1.Range("B" &I_first - 1).Value + Sheet1.Range("C" &I_first - 1).Value

For i = I_first To I_end

If Trim(Sheet1.Range("A" & i).Value) = "ZD" Then

K = Sheet1.Range("B" & i).Value + Sheet1.Range("C" & i - 1).Value Else

Sheet1.Range("C" & i).Value = K - Sheet1.Range("B" & i).Value

End If

Next i

MsgBox "I LOVE 'VBA'" &vbCrLf& "CopyRight by ZZL" &vbCrLf& "liulangr110@", vbInformation, "高程计算完毕"

Sheet1.Range("D" & 1).Value = "1"

End Sub

Private Sub Clear() '清除代码

Dim i

For i = Sheet1.Range("H" & 4).Value To Sheet1.Range("H" & 5).Value

Sheet1.Range("C" & i).Value = Empty

Next i

Sheet1.Range("D" & 1).Value = Empty

End Sub

Sub Macro1() '删除导线点行

Dim i

For i = 1 To 445

If Left(Trim(Sheet2.Range("A" & i).Value), 1) = "D" Then

Rows(i & ":" & i).Select

Selection.Delete SHIFT:=xlUp

End If

Next i

MsgBox "OK"

End Sub

Sub Macro2() '删除转点行

Dim i

For i = 1 To 445

If Sheet2.Range("A" & i).Value = "ZD" Or Trim(Sheet2.Range("A" & i).Value) = "" Then Rows(i & ":" & i).Select

Selection.Delete SHIFT:=xlUp

End If

Next i

End Sub

相关文档
最新文档