以下のコードで構文エラーになる、ならない区別がつかなくて質問します。

クラスモジュール
Function 背景色(ByVal range1 As Range, ByVal range2 As Range)
Dim lng_color As Long
lng_color = range2.Interior.Color
range1.Interior.Color = lng_color
End Function

標準モジュール
Sub test()
Dim rng1 As Range
Dim rng2 As Range
Dim mc As New Class1
Set rng1 = Range("C3") 'C3の色を
Set rng2 = Range("A3") 'A3に適用する
Dim str As String

str = mc.背景色(rng1, rng2)

End Sub

これで、str=の部分をなくすと構文エラーになってしまうのはなぜでしょうか?