--- sc/source/ui/vba//vbainterior.cxx	
+++ sc/source/ui/vba//vbainterior.cxx
@@ -53,10 +53,8 @@ using namespace ::com::sun::star;
 using namespace ::org::openoffice;
 static const rtl::OUString BACKCOLOR( RTL_CONSTASCII_USTRINGPARAM( "CellBackColor" ) );
 
-ScVbaInterior::ScVbaInterior( const uno::Reference< uno::XComponentContext >& xContext, const uno::Reference< beans::XPropertySet >&  xProps, ScDocument* pScDoc ) throw ( lang::IllegalArgumentException) : m_xProps(xProps), m_xContext(xContext), m_pScDoc( pScDoc )
+ScVbaInterior::ScVbaInterior( const uno::Reference< vba::XHelperInterface >& xParent, const uno::Reference< uno::XComponentContext >& xContext, const uno::Reference< beans::XPropertySet >&  xProps, ScDocument* pScDoc ) throw ( lang::IllegalArgumentException) : ScVbaInterior_BASE( xParent, xContext ), m_xProps(xProps), m_pScDoc( pScDoc )
 {
-	if ( !xContext.is() )
-		throw lang::IllegalArgumentException( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "context not set" ) ), uno::Reference< uno::XInterface >(), 1 ); 
 	if ( !m_xProps.is() )
 		throw lang::IllegalArgumentException( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "properties") ), uno::Reference< uno::XInterface >(), 2 ); 
 }
@@ -78,6 +76,8 @@ ScVbaInterior::setColor( const uno::Any&
 uno::Reference< container::XIndexAccess >
 ScVbaInterior::getPalette()
 {
+	if ( !m_pScDoc ) 
+		throw uno::RuntimeException();
 	SfxObjectShell* pShell = m_pScDoc->GetDocumentShell();
 	ScVbaPalette aPalette( pShell );	
 	return aPalette.getPalette();	
@@ -126,4 +126,22 @@ ScVbaInterior::getColorIndex() throw ( c
 	return uno::makeAny( nIndex );
 }
 
+rtl::OUString& 
+ScVbaInterior::getServiceImplName()
+{
+	static rtl::OUString sImplName( RTL_CONSTASCII_USTRINGPARAM("ScVbaInterior") );
+	return sImplName;
+}
+
+uno::Sequence< rtl::OUString > 
+ScVbaInterior::getServiceNames()
+{
+	static uno::Sequence< rtl::OUString > aServiceNames;
+	if ( aServiceNames.getLength() == 0 )
+	{
+		aServiceNames.realloc( 1 );
+		aServiceNames[ 0 ] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("org.openoffice.excel.Interior" ) );
+	}
+	return aServiceNames;
+}
 
