excel-vba组内离均差
2016-07-02 09:30
465 查看
Sub 组内离均差()
'
' 组内平均值 Macro
' 宏由 zzh_my@163.com 录制,时间: 2015/11/18
'
'点名 初始化时间(s) 测量时刻 次序号 平面x(m) 平面y(m) 大地高(m) 解类型 备注 观测类型 观测者 x组内离均值 y组内离均值 H组内离均值 abs(x组内离均值) abs(y组内离均值) abs(H组内离均值) x x百分比 y y百分比 H H百分比
'需按照点名先排列好
n = 0
x = 0
y = 0
H = 0
sheetname = "1-投影129xyH"
' rowNumber = 933 'x = range("A65536").end(xlup).row i = cells(rows.count,1).end(xlup).row+1
rowNumber = Worksheets(sheetname).Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To rowNumber Step 1
' MsgBox (Name)
'假如点名和下一条相等,且观测类型相等
If (Worksheets(sheetname).Cells(i, 1).Value = Worksheets(sheetname).Cells(i + 1, 1)) And (Worksheets(sheetname).Cells(i, 10).Value = Worksheets(sheetname).Cells(i + 1, 10)) Then
n = n + 1
x = x + Worksheets(sheetname).Cells(i, 5).Value
y = y + Worksheets(sheetname).Cells(i, 6).Value
H = H + Worksheets(sheetname).Cells(i, 7).Value
Else
For j = 1 To n + 1 Step 1
x_mean = x / n
y_mean = y / n
H_mean = H / n
h1 = Worksheets(sheetname).Cells(i - j + 1, 7).Value
' MsgBox (x_mean)
Worksheets(sheetname).Cells(i - j + 1, 12).Value = Worksheets(sheetname).Cells(i - j + 1, 5).Value - x_mean
Worksheets(sheetname).Cells(i - j + 1, 13).Value = Worksheets(sheetname).Cells(i - j + 1, 6).Value - y_mean
Worksheets(sheetname).Cells(i - j + 1, 14).Value = Worksheets(sheetname).Cells(i - j + 1, 7).Value - H_mean
Next j
x = 0
y = 0
H = 0
x_mean = 0
y_mean = 0
H_mean = 0
n = 0
End If
Next i
End Sub
'
' 组内平均值 Macro
' 宏由 zzh_my@163.com 录制,时间: 2015/11/18
'
'点名 初始化时间(s) 测量时刻 次序号 平面x(m) 平面y(m) 大地高(m) 解类型 备注 观测类型 观测者 x组内离均值 y组内离均值 H组内离均值 abs(x组内离均值) abs(y组内离均值) abs(H组内离均值) x x百分比 y y百分比 H H百分比
'需按照点名先排列好
n = 0
x = 0
y = 0
H = 0
sheetname = "1-投影129xyH"
' rowNumber = 933 'x = range("A65536").end(xlup).row i = cells(rows.count,1).end(xlup).row+1
rowNumber = Worksheets(sheetname).Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To rowNumber Step 1
' MsgBox (Name)
'假如点名和下一条相等,且观测类型相等
If (Worksheets(sheetname).Cells(i, 1).Value = Worksheets(sheetname).Cells(i + 1, 1)) And (Worksheets(sheetname).Cells(i, 10).Value = Worksheets(sheetname).Cells(i + 1, 10)) Then
n = n + 1
x = x + Worksheets(sheetname).Cells(i, 5).Value
y = y + Worksheets(sheetname).Cells(i, 6).Value
H = H + Worksheets(sheetname).Cells(i, 7).Value
Else
For j = 1 To n + 1 Step 1
x_mean = x / n
y_mean = y / n
H_mean = H / n
h1 = Worksheets(sheetname).Cells(i - j + 1, 7).Value
' MsgBox (x_mean)
Worksheets(sheetname).Cells(i - j + 1, 12).Value = Worksheets(sheetname).Cells(i - j + 1, 5).Value - x_mean
Worksheets(sheetname).Cells(i - j + 1, 13).Value = Worksheets(sheetname).Cells(i - j + 1, 6).Value - y_mean
Worksheets(sheetname).Cells(i - j + 1, 14).Value = Worksheets(sheetname).Cells(i - j + 1, 7).Value - H_mean
Next j
x = 0
y = 0
H = 0
x_mean = 0
y_mean = 0
H_mean = 0
n = 0
End If
Next i
End Sub
相关文章推荐
- vb.net面向对象(函数和过程的区别)
- vb.net判断
- vb.net第一课(第4小节)类型转换
- vb.net第一课(第3小节)变量的显示声明与隐式声明
- vb.net第一课(第2小节)导入命名空间
- vb.net第一课(第1小节)你好世界
- vba 更新折线图上显示内容
- vba regexp
- 基本布局-QHBoxLayout类、QVBoxLayout类、QGridLayout类
- VB6.0新手入门代码 通过点击button控件,退出程序
- VB6.0新手入门代码 在指定位置创建文件夹
- VB6.0新手入门代码 用VB创建一个以当前年月日命名的文件夹
- VB6.0新手入门代码 用VB打开程序所在目录下的文件
- VB6.0新手入门代码 用VB打开文件夹
- VB6.0新手入门代码 用VB打开文件
- VB6.0新手入门代码 用VB获取当前的年月日
- auto-group
- 【办公-WORD】VBA 统计相同字符(文字)出现的个数
- vb输入输出
- vb输入输出