Analyze Cruise Performance

Doug1

I love flying!
Joined
Jun 4, 2016
Messages
35
Hi
All

For those of you who download user logs from Skyview to use with Savvyanalysis or just to analyze, here is a little excel macro useful in analyzing the cruise performance of your aircraft by averaging a number of columns over a range of Hobbs times.
I use Savvyanalysis to choose a range of hobbs values where airspeed, altitude and engine settings are reasonably constant. I then enter the start and end hobbs values into the running macro which then calculates the following averages:

TAS, FF, PALT, DALT, RPM, MAP, GS, IAS and PITCH

By averaging, the natural variation in readings during to flying is averaged out.

Here is the macro that I store in Personal.xlbs so it is available for all downloaded spreadsheets:

Sub CalcPerf()
'
' CalcPerf Macro
' Calculates aircraft performance based on a range of hobbs values
'
Dim starthobbs As Variant
Dim endhobbs As Variant
Dim startcell As Range
Dim endcell As Range

Dim averagetas As Variant
Dim averageff As Variant
Dim averagepalt As Variant
Dim averagerpm As Variant
Dim averagemap As Variant
Dim averagedalt As Variant
Dim averagegs As Variant
Dim averageias As Variant
Dim averagepitch As Variant
Dim averageoat As Variant

starthobbs = InputBox("Enter start hobbs")
endhobbs = InputBox("Enter end hobbs")

Set startcell = Range("BS:BS").Find(What:=starthobbs)
Set endcell = Range("BS:BS").Find(What:=endhobbs)

Set tasrange = Range("AA" & startcell.Row & ":AA" & endcell.Row)
Set ffrange = Range("BJ" & startcell.Row & ":BJ" & endcell.Row)
Set paltrange = Range("T" & startcell.Row & ":T" & endcell.Row)
Set rpmrange = Range("BG" & startcell.Row & ":BG" & endcell.Row)
Set maprange = Range("BI" & startcell.Row & ":BI" & endcell.Row)
Set daltrange = Range("AC" & startcell.Row & ":AC" & endcell.Row)
Set gsrange = Range("H" & startcell.Row & ":H" & endcell.Row)
Set iasrange = Range("S" & startcell.Row & ":S" & endcell.Row)
Set pitchrange = Range("P" & startcell.Row & ":p" & endcell.Row)
Set oatrange = Range("Z" & startcell.Row & ":Z" & endcell.Row)

averagetas = Application.WorksheetFunction.Average(tasrange)
averageff = Application.WorksheetFunction.Average(ffrange)
averagepalt = Application.WorksheetFunction.Average(paltrange)
averagerpm = Application.WorksheetFunction.Average(rpmrange)
averagemap = Application.WorksheetFunction.Average(maprange)
averagedalt = Application.WorksheetFunction.Average(daltrange)
averagegs = Application.WorksheetFunction.Average(gsrange)
averageias = Application.WorksheetFunction.Average(iasrange)
averagepitch = Application.WorksheetFunction.Average(pitchrange)
averageoat = Application.WorksheetFunction.Average(oatrange)

averageff = averageff * 3.79

MsgBox "Average TAS = " & averagetas & vbCrLf & _
"Average FF = " & averageff & vbCrLf & _
"Average PALT = " & averagepalt & vbCrLf & _
"Average DALT = " & averagedalt & vbCrLf & _
"Average RPM = " & averagerpm & vbCrLf & _
"Average MAP = " & averagemap & vbCrLf & _
"Average GS = " & averagegs & vbCrLf & _
"Average IAS = " & averageias & vbCrLf & _
"Average OAT = " & averageoat & vbCrLf & _
"Average PITCH = " & averagepitch

End Sub


Regards
Doug
 
Top