 		private function getColumnValues(columnIndex:int):Vector.<String>
 		{
 			var values:Vector.<String> = new Vector.<String>();
-			for (var i:int = 1; i < xlsSheetsArray[0].values.length; i++)
-				values[i-1] = xlsSheetsArray[0].values[i][columnIndex];
+			values.length = xlsSheetsArray[0].values.length - 1;
+			for (var i:int = 0; i < values.length; i++)
+			{
+				if (columnIndex < 0)
+					values[i] = String(i + 1);
+				else
+					values[i] = xlsSheetsArray[0].values[i + 1][columnIndex];
+			}
 			return values;
 		}
 		

			try
			{
				this.xlsSheetsArray = xlsSheetsArray;
				if (_attributeHierarchy.value == null)
				{
					// loop through column names, adding indicators to hierarchy
					var firstRow:Array = xlsSheetsArray[0].values[0];

			var colName:String = String(proxyColumn.getMetadata("name"));
			var colIndex:int = getColumnIndexFromSheetValues(xlsSheetsArray[0].values[0],colName);
			var keyColIndex:int = getColumnIndexFromSheetValues(xlsSheetsArray[0].values[0],keyColName.value);

			var xlsDataColumn:Vector.<String> = getColumnValues(colIndex);
			var keyStringsArray:Array = VectorUtils.copy(getColumnValues(keyColIndex), []);
