How to mock Microsoft.Office.Interop.Excel.Range with Moq?
===

I want to mock the Microsoft.Office.Interop.Excel.Range (and the other Microsoft.Office.Interop.Excel interfaces) to unit test my application. I'm using Moq 4.0.10827 with .NET 4 in C#.

In my unit test, I attempt to set up the behavior of the mock as follows:

            var range = new Mock<Microsoft.Office.Interop.Excel.Range>();
            range.Setup(r => r.get_Value(1)).Returns("Something");

            var classBeingTested = new MyClass(range.Object);


In the code being unit tested, I'm using the Range as follows:

        public MyClass(Range range)
        {
            var value = range[1].ToString();
        }

When the test runs, it produces the following exception:

            Error: Missing method 'instance object [My.Example.Implementation.MyClass] Microsoft.Office.Interop.Excel.Range::get__Default(object,object)' from class 'Castle.Proxies.RangeProxy'.

How can I implement this mocking successfully? I realize that isolating the Excel Interop functionality with a pattern such as http://stackoverflow.com/a/9486226/1548950 is a potential solution; however, I'd be happier with being able to create mocks from the Microsoft.Office.Interop.Excel interfaces.