5,139
社区成员
发帖
与我相关
我的任务
分享
Application.Run "ATPVBAEN.XLAM!Regress", ActiveSheet.Range("$C$2:$C$" & cnt + 1), _
ActiveSheet.Range("$D$2:$G$" & cnt + 1), False, False, , title & " Regression", False, _
False, False, False, , False
Function Profile(File_name, firstday, cnt, title, col, afterSheet, sheetNo)
Sheets(File_name).Select
Range("B:B," & col & ":" & col).Select
Selection.Copy
Sheets.Add After:=Sheets(afterSheet)
Sheets(sheetNo).name = title & " Profile"
Sheets(title & " Profile").Select
ActiveSheet.Paste
Columns("B").Insert shift:=xlToRight
Range("B1") = "t"
Columns("B:B").NumberFormat = "0.00"
Range("B2").Select
ActiveCell.FormulaR1C1 = "=RC[-1]-36665"
Selection.Copy
Selection.AutoFill Destination:=Range("B2:B" & cnt + 1), Type:=xlFillDefault
Range("D1") = title & " x1"
Range("E1") = title & " z1"
Range("F1") = title & " x2"
Range("G1") = title & " z2"
Range("H1") = title & " Fit"
Columns("D:H").NumberFormat = "0.00"
Range("D2").Select
ActiveCell.FormulaR1C1 = "=COS(2*PI()*RC[-2])"
Selection.Copy
Selection.AutoFill Destination:=Range("D2:D" & cnt + 1), Type:=xlFillDefault
Range("E2").Select
ActiveCell.FormulaR1C1 = "=-SIN(2*PI()*RC[-3])"
Selection.Copy
Selection.AutoFill Destination:=Range("E2:E" & cnt + 1), Type:=xlFillDefault
Range("F2").Select
ActiveCell.FormulaR1C1 = "=COS(2*PI()*RC[-4]/0.5)"
Selection.Copy
Selection.AutoFill Destination:=Range("F2:F" & cnt + 1), Type:=xlFillDefault
Range("G2").Select
ActiveCell.FormulaR1C1 = "=-SIN(2*PI()*RC[-5]/0.5)"
Selection.Copy
Selection.AutoFill Destination:=Range("G2:G" & cnt + 1), Type:=xlFillDefault
Range("H2").Select
ActiveCell.FormulaR1C1 = "=TREND(R2C[-5]:R" & cnt + 1 & "C[-5],R2C[-4]:R" _
& cnt + 1 & "C[-1],RC[-4]:RC[-1],TRUE)"
Selection.AutoFill Destination:=Range("H2:H" & cnt + 1), Type:=xlFillDefault
Application.Run "Regress", ActiveSheet.Range("$C$2:$C$" & cnt + 1), _
ActiveSheet.Range("$D$2:$G$" & cnt + 1), False, False, , title & " Regression", False, _
False, False, False, , False
Sheets(title & " Regression").Move After:=Sheets(title & " Profile")
'get values needed from Regression for SBP(t)
Y = Format(Range("B17"), "0.0")
a = Format((Range("B18") ^ 2 + Range("B19") ^ 2) ^ 0.5, "0.00")
P = Atn(-Range("B19") / Range("B18"))
If (P < 0) Then
P = (P + 3.141593)
End If
If (-Range("B19") < 0) Then
P = P + 3.141593
End If
Sheets(title & " Profile").Select
Range("I1") = title & "(t)"
Range("I2").Select
ActiveCell.FormulaR1C1 = "= " & Y & " + " & a & " * COS(2*PI()*RC[-7]+" & P & ")"
Selection.AutoFill Destination:=Range("I2:I" & cnt + 1), Type:=xlFillDefault
' Call ProfilePlot
End Function
Excel 表格如下
Date t SBP SBP x1 SBP z1 SBP x2 SBP z2
12/15/12 20:20 4593.85 132 0.57 0.82 -0.34 0.94
12/15/12 20:30 4593.85 152 0.61 0.79 -0.26 0.97
12/15/12 21:04 4593.88 141 0.72 0.69 0.03 1.00
12/15/12 21:07 4593.88 141 0.73 0.69 0.06 1.00
12/15/12 23:17 4593.97 117 0.98 0.19 0.93 0.37
12/15/12 23:19 4593.97 120 0.98 0.18 0.94 0.35
12/15/12 23:20 4593.97 119 0.98 0.17 0.94 0.34
12/15/12 23:21 4593.97 105 0.99 0.17 0.94 0.33
12/15/12 23:30 4593.98 113 0.99 0.13 0.97 0.26
12/16/12 0:00 4594.00 111 1.00 0.00 1.00 0.00
12/16/12 0:30 4594.02 105 0.99 -0.13 0.97 -0.26
12/16/12 1:00 4594.04 107 0.97 -0.26 0.87 -0.50
12/16/12 1:30 4594.06 109 0.92 -0.38 0.71 -0.71
12/16/12 2:00 4594.08 99 0.87 -0.50 0.50 -0.87
我只是把
Application.Run "ATPVBAEN.XLAM!Regress", ActiveSheet.Range("$C$2:$C$" & cnt + 1), _
ActiveSheet.Range("$D$2:$G$" & cnt + 1), False, False, , title & " Regression", False, _
False, False, False, , False
Sheets(title & " Regression").Move After:=Sheets(title & " Profile")
代码中的 ATPVBAEN.XLAM! 给删除了
office 安装文件里面的ATPVBAEN.XLAM 没有删除
Function Run([Macro], [Arg1], [Arg2], [Arg3], [Arg4], [Arg5], [Arg6], [Arg7], [Arg8], [Arg9], [Arg10], [Arg11], [Arg12], [Arg13], [Arg14], [Arg15], [Arg16], [Arg17], [Arg18], [Arg19], [Arg20], [Arg21], [Arg22], [Arg23], [Arg24], [Arg25], [Arg26], [Arg27], [Arg28], [Arg29], [Arg30])
Excel.Application 的成员
猜想是用来执行宏的 后面的参数就是执行宏所用到的参数 你的宏文件丢失了 所以报错