--- /dev/null	
+++ offapi/org/openoffice/vba/XRange.idl	
@@ -0,0 +1,105 @@
+#ifndef __org_openoffice_vba_XRange_idl__
+#define __org_openoffice_vba_XRange_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+#ifndef __org_openoffice_vba_XlPasteType_idl__
+#include <org/openoffice/vba/XlPasteType.idl>
+#endif
+#ifndef __org_openoffice_vba_XlPasteSpecialOperation_idl__
+#include <org/openoffice/vba/XlPasteSpecialOperation.idl>
+#endif
+#ifndef __org_openoffice_vba_XCollection_idl__
+#include <org/openoffice/vba/XCollection.idl>
+#endif
+//=============================================================================
+
+module org {  module openoffice {  module vba { 
+
+interface XFont;
+interface XRows;
+interface XColumns;
+interface XComment;
+interface XInterior;
+interface XCharacters;
+interface XBorders;
+published interface XWorksheet;
+
+interface XRange: com::sun::star::uno::XInterface
+{
+	[attribute] any Value; 
+	[attribute] any Formula;
+	[attribute] any FormulaArray;
+	[attribute] any FormulaR1C1;
+	[attribute, readonly] double Count;
+	[attribute, readonly] long Row;
+	[attribute, readonly] long Column;
+	[attribute, readonly] string Text;
+	[attribute, readonly] XRange EntireRow;
+	[attribute, readonly] XRange EntireColumn;
+	[attribute, readonly] XComment Comment;
+	[attribute] boolean MergeCells;
+	[attribute] any NumberFormat;
+	[attribute] any WrapText;
+	[attribute] any Hidden;
+	[attribute] any ColumnWidth;
+	[attribute, readonly ] any Width;
+	[attribute, readonly] XWorksheet Worksheet;
+	[attribute] any RowHeight;
+	[attribute, readonly ] any Height;
+	XComment AddComment( [in] any Text ); 
+	void Clear();
+	void ClearComments();
+	void ClearContents();
+	void ClearFormats();
+	any HasFormula();
+	void FillLeft();
+	void FillRight();
+	void FillUp();
+	void FillDown();
+	XRange Offset([in] any RowOffset, [in] any ColumnOffset);
+	XRange CurrentRegion();
+	XRange CurrentArray(); 
+	string Characters([in] any Start, [in] any Length);
+	string Address( [in] any RowAbsolute, [in] any ColumnAbsolute, [in] any ReferenceStyle, [in] any External, [in] any RelativeTo );	
+	XRange Cells([in] any RowIndex, [in] any ColumnIndex);
+	void Select();
+	void Activate();
+	XRange Rows( [in] any RowIndex );
+	XRange Columns( [in] any ColumnIndex );
+	void Copy([in] any Destination);
+	void Cut([in] any Destination);
+	XRange Resize( [in] any RowSize, [in] any ColumnSize );
+	XFont Font();
+	XInterior Interior();
+	XRange Range( [in] any Cell1, [in] any Cell2 );
+	any getCellRange();
+	void PasteSpecial([in] any Paste, [in] any Operation,[in] any SkipBlanks, [in] any Transpose);
+	boolean  Replace( [in] string What, [in] string Replacement, [in] any LookAt, [in] any SearchOrder, [in] any MatchCase, [in] any MatchByte, [in] any SearchFormat, [in] any ReplaceFormat );
+	
+	void Sort( [in] any Key1, [in] any Order1, [in] any Key2, [in] any Type,
+		[in] any Order2, [in] any Key3, [in] any Order3,
+		[in] any Header, [in] any OrderCustom, [in] any MatchCase, 
+		[in] any Orientation, [in] any SortMethod, [in] any DataOption1,
+		[in] any DataOption2, [in] any DataOption3 );
+	XRange End( [in] long Direction );
+	// bizarely I have to define Character method as character otherwise
+	// idl complains
+	XCharacters characters([in] any Start, [in] any Length);
+	void Delete( [in] any Shift );
+		
+	any Areas( [in] any item );
+	any Borders( [in] any item );
+};
+
+//=============================================================================
+
+}; }; };
+
+#endif
+
+
