--- sc/source/ui/vba//vbafont.cxx	
+++ sc/source/ui/vba//vbafont.cxx
@@ -68,7 +68,7 @@ const sal_Int8 SUBSCRIPTHEIGHT = 58; 
 // specifies a hight of normal font 
 const short NORMALHEIGHT = 100; 
 
-ScVbaFont::ScVbaFont( const ScVbaPalette& dPalette, uno::Reference< beans::XPropertySet > xPropertySet, SfxItemSet* pDataSet  ) throw ( uno::RuntimeException ) : mxFont( xPropertySet, css::uno::UNO_QUERY_THROW ), mPalette( dPalette ),  mpDataSet( pDataSet )
+ScVbaFont::ScVbaFont( const uno::Reference< vba::XHelperInterface >& xParent, const uno::Reference< uno::XComponentContext >& xContext, const ScVbaPalette& dPalette, uno::Reference< beans::XPropertySet > xPropertySet, SfxItemSet* pDataSet  ) throw ( uno::RuntimeException ) : ScVbaFont_BASE( xParent, xContext ), mxFont( xPropertySet, css::uno::UNO_QUERY_THROW ), mPalette( dPalette ),  mpDataSet( pDataSet )
 {
 }
 
@@ -399,3 +399,22 @@ ScVbaFont::getName() throw ( uno::Runtim
 			return aNULL();
 	return mxFont->getPropertyValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharFontName" ) ) );
 }
+
+rtl::OUString& 
+ScVbaFont::getServiceImplName()
+{
+	static rtl::OUString sImplName( RTL_CONSTASCII_USTRINGPARAM("ScVbaFont") );
+	return sImplName;
+}
+
+uno::Sequence< rtl::OUString > 
+ScVbaFont::getServiceNames()
+{
+	static uno::Sequence< rtl::OUString > aServiceNames;
+	if ( aServiceNames.getLength() == 0 )
+	{
+		aServiceNames.realloc( 1 );
+		aServiceNames[ 0 ] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("org.openoffice.excel.Font" ) );
+	}
+	return aServiceNames;
+}
