Average values if begins with

To average values if corresponding cells begin with a specific value you can apply an Excel or a VBA method using the Excel AVERAGEIF function

Example: Average values if begins with

Average values if begins with

METHOD 1. Average values if begins with a specific value

EXCEL

=AVERAGEIF(B8:B14,C5&"*",C8:C14)
The formula uses the Excel AVERAGEIF function and the asterisk (*) to average the values in range (C8:C14) when the values in range (B8:B14) begins with "b", which is specified in cell C5. The asterisk (*) represents one or more characters.

METHOD 1. Average values if begins with a specific value using VBA

VBA

Sub Average_values_if_begins_with_a_specific_value()
'declare a variable
Dim ws As Worksheet
Set ws = Worksheets("Analysis")
'apply the formula to average the values in range (C8:C14) when the values in range (B8:B14) begins with "b", which is specified in cell (C5)
ws.Range("E8") = Application.WorksheetFunction.AverageIf(ws.Range("B8:B14"), ws.Range("C5") & "*", ws.Range("C8:C14"))

End Sub

OBJECTS
Worksheets: The Worksheets object represents all of the worksheets in a workbook, excluding chart sheets.
Range: The Range object is a representation of a single cell or a range of cells in a worksheet.
PREREQUISITES
Worksheet Name: Have a worksheet named Analysis.
Data Range: Ensure that the data that you want to average from is captured in range ("C8:C14") in the Analysis worksheet.
Specific Value: Input the specific value in cell ("C5") in the Analysis worksheet that you want to average when the values in range ("B8:B14") begins with that specific value.

ADJUSTABLE PARAMETERS
Specific Value: Select the specific value, by changing the value in cell ("C5"), that you want to average when the values in range ("B8:B14") begins with that specific value. Alternatively, you can replace ws.Range("C5") in the VBA code with the specific value or a defined name that represents the specific value that you want to test for.
Date Range: Select the range that you want test the criteria against by changing range ("B8:B14") to any range in the worksheet, that doesn't conflict with the formula.
Average Range: Select the range that you want to average from by changing range ("C8:C14") to any range in the worksheet, that doesn't conflict with the formula.
Output Range: Select the output range by changing the cell reference ("E8") to any cell in the worksheet, that doesn't conflict with the formula.

Explanation about the formula used to average values if begins with a specific value

EXPLANATION

EXPLANATION
To average values if corresponding cells begin with a specific value you can apply an Excel or a VBA method. The formula used to average values if corresponding cells begin with a specific value is driven by an Excel AVERAGEIF function.
In both the VBA and Excel examples the formula average the values from a specified range (C8:C14) when the values in range (B8:B14) begins with "b", which is the value in cell C5. This is achieved through the use of the Excel AVERAGEIF function and the asterisk (*) wildcard.
FORMULA
=AVERAGEIF(range, value*, average_range)
ARGUMENTS
range: The range of cells you want to test the value against and average from.
average_range: The range of cells you want to average from.
value: The value that is used to determine which of the cells should be averaged from "average_range" when the values in "range" being with the value. If the value is referencing to a cell, as per the example in this tutorial, you need to insert the &"*" sign after the cell reference (e.g. AVERAGEIF(range, value&"*",average_range)).