/**************************************************************
 *
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 *
 *************************************************************/

#include "globstr.hrc"
#include "sc.hrc"

Resource RID_GLOBSTR
{
	String STR_UNDO_INSERTCELLS
	{
		Text [ en-US ] = "Insert" ;
	};
	String STR_UNDO_DELETECELLS
	{
		Text [ en-US ] = "Delete" ;
	};
	String STR_UNDO_CUT
	{
		Text [ en-US ] = "Cut" ;
	};
	String STR_UNDO_PASTE
	{
		Text [ en-US ] = "Insert" ;
	};
	String STR_UNDO_DRAGDROP
	{
		Text [ en-US ] = "Drag and Drop" ;
	};
	String STR_UNDO_MOVE
	{
		Text [ en-US ] = "Move" ;
	};
	String STR_UNDO_COPY
	{
		Text [ en-US ] = "Copy" ;
	};
	String STR_UNDO_DELETECONTENTS
	{
		Text [ en-US ] = "Delete" ;
	};
	String STR_UNDO_SELATTR
	{
		Text [ en-US ] = "Attributes" ;
	};
	String STR_UNDO_SELATTRLINES
	{
		Text [ en-US ] = "Attributes/Lines" ;
	};
	String STR_UNDO_COLWIDTH
	{
		Text [ en-US ] = "Column Width" ;
	};
	String STR_UNDO_OPTCOLWIDTH
	{
		Text [ en-US ] = "Optimal Column Width" ;
	};
	String STR_UNDO_ROWHEIGHT
	{
		Text [ en-US ] = "Row height" ;
	};
	String STR_UNDO_OPTROWHEIGHT
	{
		Text [ en-US ] = "Optimal Row Height" ;
	};
	String STR_UNDO_AUTOFILL
	{
		Text [ en-US ] = "Fill" ;
	};
	String STR_UNDO_MERGE
	{
		Text [ en-US ] = "Merge" ;
	};
	String STR_UNDO_REMERGE
	{
		Text [ en-US ] = "Split" ;
	};
	String STR_UNDO_AUTOFORMAT
	{
		Text [ en-US ] = "AutoFormat" ;
	};
	String STR_UNDO_REPLACE
	{
		Text [ en-US ] = "Replace" ;
	};
	String STR_UNDO_CURSORATTR
	{
		Text [ en-US ] = "Attributes" ;
	};
	String STR_UNDO_ENTERDATA
	{
		Text [ en-US ] = "Input" ;
	};
	String STR_UNDO_INSCOLBREAK
	{
		Text [ en-US ] = "Insert Column Break" ;
	};
	String STR_UNDO_DELCOLBREAK
	{
		Text [ en-US ] = "Delete column break" ;
	};
	String STR_UNDO_INSROWBREAK
	{
		Text [ en-US ] = "Insert Row Break" ;
	};
	String STR_UNDO_DELROWBREAK
	{
		Text [ en-US ] = "Delete row break" ;
	};
	String STR_UNDO_DOOUTLINE
	{
		Text [ en-US ] = "View Details" ;
	};
	String STR_UNDO_REDOOUTLINE
	{
		Text [ en-US ] = "Hide details" ;
	};
	String STR_UNDO_MAKEOUTLINE
	{
		Text [ en-US ] = "Group" ;
	};
	String STR_UNDO_REMAKEOUTLINE
	{
		Text [ en-US ] = "Ungroup" ;
	};
	String STR_UNDO_OUTLINELEVEL
	{
		Text [ en-US ] = "Select outline level" ;
	};
	String STR_UNDO_DOOUTLINEBLK
	{
		Text [ en-US ] = "View Details" ;
	};
	String STR_UNDO_REDOOUTLINEBLK
	{
		Text [ en-US ] = "Hide details" ;
	};
	String STR_UNDO_REMOVEALLOTLNS
	{
		Text [ en-US ] = "Clear Outline" ;
	};
	String STR_UNDO_AUTOOUTLINE
	{
		Text [ en-US ] = "AutoOutline" ;
	};
	String STR_UNDO_SUBTOTALS
	{
		Text [ en-US ] = "Subtotals" ;
	};
	String STR_UNDO_SORT
	{
		Text [ en-US ] = "Sort" ;
	};
	String STR_UNDO_QUERY
	{
		Text [ en-US ] = "Filter" ;
	};
	String STR_UNDO_DBDATA
	{
		Text [ en-US ] = "Change Database Range" ;
	};
	String STR_UNDO_IMPORTDATA
	{
		Text [ en-US ] = "Importing" ;
	};
	String STR_UNDO_REPEATDB
	{
		Text [ en-US ] = "Refresh range" ;
	};
	String STR_UNDO_GRAFEDIT
	{
		Text [ en-US ] = "Edit graphics" ;
	};
	String STR_UNDO_LISTNAMES
	{
		Text [ en-US ] = "List names" ;
	};
	String STR_UNDO_PIVOT_NEW
	{
		Text [ en-US ] = "Create pivot table" ;
	};
	String STR_UNDO_PIVOT_MODIFY
	{
		Text [ en-US ] = "Edit pivot table" ;
	};
	String STR_UNDO_PIVOT_DELETE
	{
		Text [ en-US ] = "Delete pivot table" ;
	};
	String STR_UNDO_CONSOLIDATE
	{
		Text [ en-US ] = "Consolidate" ;
	};
	String STR_UNDO_USESCENARIO
	{
		Text [ en-US ] = "Use scenario" ;
	};
	String STR_UNDO_MAKESCENARIO
	{
		Text [ en-US ] = "Create scenario" ;
	};
	String STR_UNDO_EDITSCENARIO
	{
		Text [ en-US ] = "Edit scenario" ;
	};
	String STR_UNDO_APPLYCELLSTYLE
	{
		Text [ en-US ] = "Apply Cell Style" ;
	};
	String STR_UNDO_EDITCELLSTYLE
	{
		Text [ en-US ] = "Edit Cell Style" ;
	};
	String STR_UNDO_APPLYPAGESTYLE
	{
		Text [ en-US ] = "Apply Page Style" ;
	};
	String STR_UNDO_EDITPAGESTYLE
	{
		Text [ en-US ] = "Edit Page Style" ;
	};
	String STR_UNDO_DETADDPRED
	{
		Text [ en-US ] = "Trace Precedents" ;
	};
	String STR_UNDO_DETDELPRED
	{
		Text [ en-US ] = "Remove Precedent" ;
	};
	String STR_UNDO_DETADDSUCC
	{
		Text [ en-US ] = "Trace Dependents" ;
	};
	String STR_UNDO_DETDELSUCC
	{
		Text [ en-US ] = "Remove Dependent" ;
	};
	String STR_UNDO_DETADDERROR
	{
		Text [ en-US ] = "Trace Error" ;
	};
	String STR_UNDO_DETDELALL
	{
		Text [ en-US ] = "Remove all Traces" ;
	};
	String STR_UNDO_DETINVALID
	{
		Text [ en-US ] = "Mark invalid data" ;
	};
	String STR_UNDO_DETREFRESH
	{
		Text [ en-US ] = "Refresh Traces" ;
	};
	String STR_UNDO_CHARTDATA
	{
		Text [ en-US ] = "Modify chart data range" ;
	};
	String STR_UNDO_ORIGINALSIZE
	{
		Text [ en-US ] = "Original Size" ;
	};
	String STR_UNDO_UPDATELINK
	{
		Text [ en-US ] = "Update Link" ;
	};
	String STR_UNDO_REMOVELINK
	{
		Text [ en-US ] = "Unlink" ;
	};
	String STR_UNDO_INSERTAREALINK
	{
		Text [ en-US ] = "Insert Link" ;
	};
	String STR_UNDO_ENTERMATRIX
	{
		Text [ en-US ] = "Insert Array Formula" ;
	};
	String STR_UNDO_INSERTNOTE
	{
		Text [ en-US ] = "Insert Comment" ;
	};
	String STR_UNDO_DELETENOTE
	{
		Text [ en-US ] = "Delete Comment" ;
	};
	String STR_UNDO_SHOWNOTE
	{
		Text [ en-US ] = "Show Comment" ;
	};
	String STR_UNDO_HIDENOTE
	{
		Text [ en-US ] = "Hide Comment" ;
	};
	String STR_UNDO_EDITNOTE
	{
		Text [ en-US ] = "Edit Comment" ;
	};
	String STR_UNDO_DEC_INDENT
	{
		Text [ en-US ] = "Decrease Indent" ;
	};
	String STR_UNDO_INC_INDENT
	{
		Text [ en-US ] = "Increase Indent" ;
	};
	String STR_UNDO_PROTECT_TAB
	{
		Text [ en-US ] = "Protect sheet" ;
	};
	String STR_UNDO_UNPROTECT_TAB
	{
		Text [ en-US ] = "Unprotect sheet" ;
	};
	String STR_UNDO_PROTECT_DOC
	{
		Text [ en-US ] = "Protect document" ;
	};
	String STR_UNDO_UNPROTECT_DOC
	{
		Text [ en-US ] = "Unprotect document" ;
	};
	String STR_UNDO_PRINTRANGES
	{
		Text [ en-US ] = "Print range" ;
	};
	String STR_UNDO_REMOVEBREAKS
	{
		Text [ en-US ] = "Delete Page Breaks" ;
	};
	String STR_UNDO_PRINTSCALE
	{
		Text [ en-US ] = "Change Scale" ;
	};
	String STR_UNDO_DRAG_BREAK
	{
		Text [ en-US ] = "Move Page Break" ;
	};
	String STR_UNDO_RANGENAMES
	{
		Text [ en-US ] = "Edit range names" ;
	};
	String STR_UNDO_TRANSLITERATE
	{
		Text [ en-US ] = "Case/Characters" ;
	};
	String STR_DB_NONAME
	{
		Text [ en-US ] = "unnamed" ;
	};
	String STR_DBNAME_IMPORT
	{
		Text [ en-US ] = "Import" ;
	};
	String STR_MSSG_DOSUBTOTALS_0
	{
		Text [ en-US ] = "%PRODUCTNAME Calc" ;
	};
	String STR_MSSG_DOSUBTOTALS_1
	{
		Text [ en-US ] = "Delete data?" ;
	};
	String STR_MSSG_DOSUBTOTALS_2
	{
		Text [ en-US ] = "Unable to insert rows" ;
	};
	String STR_MSSG_REPEATDB_0
	{
		Text [ en-US ] = "No operations to execute" ;
	};
	String STR_MSSG_MAKEAUTOFILTER_0
	{
		Text [ en-US ] = "The range does not contain column headers.\nDo you want the first line to be used as column header?" ;
	};
	String STR_MSSG_IMPORTDATA_0
	{
		Text [ en-US ] = "Error while importing data!" ;
	};
	String STR_DATABASE_NOTFOUND
	{
		Text [ en-US ] = "The database '#' could not be opened." ;
	};
	String STR_QUERY_NOTFOUND
	{
		Text [ en-US ] = "The query '#' could not be opened." ;
	};
	String STR_DATABASE_ABORTED
	{
		Text [ en-US ] = "Database import terminated." ;
	};
	String STR_PROGRESS_IMPORT
	{
		Text [ en-US ] = "# records imported..." ;
	};
	String STR_MSSG_MAKEOUTLINE_0
	{
		Text [ en-US ] = "Grouping not possible" ;
	};
	String STR_MSSG_REMOVEOUTLINE_0
	{
		Text [ en-US ] = "Ungrouping not possible" ;
	};
	String STR_MSSG_PASTEFROMCLIP_0
	{
		Text [ en-US ] = "Insert into multiple selection not possible" ;
	};
	String STR_MSSG_PASTEFROMCLIP_1
	{
		Text [ en-US ] = "Cell merge not possible if cells already merged!" ;
	};
	String STR_MSSG_MOVEBLOCKTO_0
	{
		Text [ en-US ] = "Cell merge not possible if cells already merged!" ;
	};
	String STR_MSSG_INSERTCELLS_0
	{
		Text [ en-US ] = "Inserting into merged ranges not possible" ;
	};
	String STR_MSSG_DELETECELLS_0
	{
		Text [ en-US ] = "Deleting in merged ranges not possible" ;
	};
	String STR_MSSG_MERGECELLS_0
	{
		Text [ en-US ] = "Cell merge not possible if cells already merged" ;
	};
	String STR_SORT_ERR_MERGED
	{
		Text [ en-US ] = "Ranges containing merged cells can only be sorted without formats." ;
	};
	String STR_MSSG_SEARCHANDREPLACE_0
	{
		Text [ en-US ] = "Search key not found." ;
	};
	String STR_MSSG_SOLVE_0
	{
		Text [ en-US ] = "Goal Seek successful.\n" ;
	};
	String STR_MSSG_SOLVE_1
	{
		Text [ en-US ] = "Insert result (" ;
	};
	String STR_MSSG_SOLVE_2
	{
		Text [ en-US ] = ") into current cell?" ;
	};
	String STR_MSSG_SOLVE_3
	{
		Text [ en-US ] = "Goal Seek not successful.\n" ;
	};
	String STR_MSSG_SOLVE_4
	{
		Text [ en-US ] = "No exact value found. \n" ;
	};
	String STR_MSSG_SOLVE_5
	{
		Text [ en-US ] = "Insert closest value (" ;
	};
	String STR_MSSG_SOLVE_6
	{
		Text [ en-US ] = ")?" ;
	};
	String STR_TABLE_GESAMTERGEBNIS
	{
		Text [ en-US ] = "Grand Total" ;
	};
	String STR_TABLE_ERGEBNIS
	{
		Text [ en-US ] = "Result" ;
	};
	String STR_UNDO_SPELLING
	{
		Text [ en-US ] = "Spellcheck" ;
	};
	String STR_TABLE_UND
	{
		Text [ en-US ] = "AND" ;
	};
	String STR_TABLE_ODER
	{
		Text [ en-US ] = "OR" ;
	};
	String STR_TABLE_DEF
	{
		Text [ en-US ] = "Sheet" ;
	};
	String STR_MOVE_TO_END
	{
		Text [ en-US ] = "- move to end position -" ;
	};
	String STR_BOX_YNI
	{
		Text [ en-US ] = "Not implemented in this build." ;
	};
	String STR_NO_REF_TABLE
	{
		Text [ en-US ] = "#REF!" ;
	};
	String STR_PIVOT_INVALID_DBAREA
	{
		Text [ en-US ] = "The data range must contain at least one row." ;
	};
	String STR_PIVOT_NODATA
	{
		Text [ en-US ] = "The pivot table must contain at least one entry." ;
	};
	String STR_PIVOT_MOVENOTALLOWED
	{
		Text [ en-US ] = "The data range can not be deleted." ;
	};
	String STR_PIVOT_ERROR
	{
		Text [ en-US ] = "Error creating the pivot table." ;
	};
	String STR_PIVOT_OVERLAP
	{
		Text [ en-US ] = "Pivot tables can not overlap." ;
	};
	String STR_PIVOT_NOTEMPTY
	{
		Text [ en-US ] = "The destination range is not empty. Overwrite existing contents?" ;
	};
	String STR_DATAPILOT_SUBTOTAL
	{
		Text [ en-US ] = "The source range contains subtotals which may distort the results. Use it anyway?" ;
	};
	String STR_PIVOT_PROGRESS
	{
		Text [ en-US ] = "Create Pivot Table" ;
	};
	String STR_PIVOT_TOTAL
	{
		Text [ en-US ] = "Total" ;
	};
	String STR_PIVOT_DATA
	{
		Text [ en-US ] = "Data" ;
	};
	String STR_PIVOTFUNC_SUM
	{
		Text [ en-US ] = "SUM" ;
	};
	String STR_PIVOTFUNC_COUNT
	{
		Text [ en-US ] = "COUNT" ;
	};
	String STR_PIVOTFUNC_AVG
	{
		Text [ en-US ] = "AVERAGE" ;
	};
	String STR_PIVOTFUNC_MAX
	{
		Text [ en-US ] = "MAX" ;
	};
	String STR_PIVOTFUNC_MIN
	{
		Text [ en-US ] = "MIN" ;
	};
	String STR_PIVOTFUNC_PROD
	{
		Text [ en-US ] = "PRODUCT" ;
	};
	String STR_PIVOTFUNC_COUNT2
	{
		Text [ en-US ] = "COUNTA" ;
	};
	String STR_PIVOTFUNC_STDDEV
	{
		Text [ en-US ] = "STDEV" ;
	};
	String STR_PIVOTFUNC_STDDEV2
	{
		Text [ en-US ] = "STDEVP" ;
	};
	String STR_PIVOTFUNC_VAR
	{
		Text [ en-US ] = "VAR" ;
	};
	String STR_PIVOTFUNC_VAR2
	{
		Text [ en-US ] = "VARP" ;
	};
	String STR_TABLE
	{
		Text [ en-US ] = "Sheet" ;
	};
	String STR_COLUMN
	{
		Text [ en-US ] = "Column" ;
	};
	String STR_ROW
	{
		Text [ en-US ] = "Row" ;
	};
	String STR_PAGE
	{
		Text [ en-US ] = "Page" ;
	};
	String STR_LOAD_DOC
	{
		Text [ en-US ] = "Load document" ;
	};
	String STR_SAVE_DOC
	{
		Text [ en-US ] = "Save document" ;
	};
	String STR_ERR_INVALID_TABREF
	{
		Text [ en-US ] = "<unknown table reference>" ;
	};
	String STR_AREA_ALREADY_INSERTED
	{
		Text [ en-US ] = "This range has already been inserted." ;
	};
	String STR_INVALID_TABREF
	{
		Text [ en-US ] = "Invalid sheet reference." ;
	};
	String STR_INVALID_QUERYAREA
	{
		Text [ en-US ] = "This range does not contain a valid query." ;
	};
	String STR_REIMPORT_EMPTY
	{
		Text [ en-US ] = "This range does not contain imported data." ;
	};
	String STR_NOMULTISELECT
	{
		Text [ en-US ] = "This function cannot be used with multiple selections." ;
	};
	String STR_FILL_SERIES_PROGRESS
	{
		Text [ en-US ] = "Fill Row..." ;
	};
	String STR_UNKNOWN_FILTER
	{
		Text [ en-US ] = "Unknown filter: " ;
	};
	String STR_UNDO_THESAURUS
	{
		Text [ en-US ] = "Thesaurus" ;
	};
	String STR_FILL_TAB
	{
		Text [ en-US ] = "Fill Sheets" ;
	};
	String STR_UPDATE_SCENARIO
	{
		Text [ en-US ] = "Add selected ranges to current scenario?" ;
	};
	String STR_ERR_NEWSCENARIO
	{
		Text [ en-US ] = "The scenario ranges must be selected in order to be able to create a new scenario." ;
	};
	String STR_NOAREASELECTED
	{
		Text [ en-US ] = "A range has not been selected." ;
	};
	String STR_NEWTABNAMENOTUNIQUE
	{
		Text [ en-US ] = "This name already exists." ;
	};
	String STR_INVALIDTABNAME
	{
		Text [ en-US ] = "Invalid sheet name." ;
	};
	String STR_SCENARIO
	{
		Text [ en-US ] = "Scenario" ;
	};
	String STR_PIVOT_TABLE
	{
		Text [ en-US ] = "Pivot Table" ;
	};
	// Text strings for captions of subtotal functions.
	String STR_FUN_TEXT_SUM
	{
		Text [ en-US ] = "Sum" ;
	};
	String STR_FUN_TEXT_COUNT
	{
		Text [ en-US ] = "Count" ;
	};
	String STR_FUN_TEXT_COUNT2
	{
		Text [ en-US ] = "CountA" ;
	};
	String STR_FUN_TEXT_AVG
	{
		Text [ en-US ] = "Average" ;
	};
	String STR_FUN_TEXT_MAX
	{
		Text [ en-US ] = "Max" ;
	};
	String STR_FUN_TEXT_MIN
	{
		Text [ en-US ] = "Min" ;
	};
	String STR_FUN_TEXT_PRODUCT
	{
		Text [ en-US ] = "Product" ;
	};
	String STR_FUN_TEXT_STDDEV
	{
		Text [ en-US ] = "StDev" ;
	};
	String STR_FUN_TEXT_VAR
	{
		Text [ en-US ] = "Var" ;
	};
	String STR_NOCHARTATCURSOR
	{
		Text [ en-US ] = "No chart found at this position." ;
	};
	String STR_PIVOT_NOTFOUND
	{
		Text [ en-US ] = "No pivot table found at this position." ;
	};
	String STR_EMPTYDATA
	{
		Text [ en-US ] = "(empty)" ;
	};
	String STR_PRINT_INVALID_AREA
	{
		Text [ en-US ] = "Invalid print range" ;
	};
	String STR_PAGESTYLE
	{
		Text [ en-US ] = "Page Style" ;
	};
	String STR_HEADER
	{
		Text [ en-US ] = "Header" ;
	};
	String STR_FOOTER
	{
		Text [ en-US ] = "Footer" ;
	};
	String STR_TEXTATTRS
	{
		Text [ en-US ] = "Text Attributes" ;
	};
	String STR_HFCMD_DELIMITER
	{
		Text [ en-US ] = "\\" ;
	};
	String STR_HFCMD_PAGE
	{
		Text [ en-US ] = "PAGE" ;
	};
	String STR_HFCMD_PAGES
	{
		Text [ en-US ] = "PAGES" ;
	};
	String STR_HFCMD_DATE
	{
		Text [ en-US ] = "DATE" ;
	};
	String STR_HFCMD_TIME
	{
		Text [ en-US ] = "TIME" ;
	};
	String STR_HFCMD_FILE
	{
		Text [ en-US ] = "FILE" ;
	};
	String STR_HFCMD_TABLE
	{
		Text [ en-US ] = "SHEET" ;
	};
	String STR_PROTECTIONERR
	{
		Text [ en-US ] = "Protected cells can not be modified." ;
	};
	String STR_READONLYERR
	{
		Text [ en-US ] = "Document opened in read-only mode." ;
	};
	String STR_MATRIXFRAGMENTERR
	{
		Text [ en-US ] = "You cannot change only part of an array." ;
	};
	String STR_PAGEHEADER
	{
		Text [ en-US ] = "Header" ;
	};
	String STR_PAGEFOOTER
	{
		Text [ en-US ] = "Footer" ;
	};

	/* BEGIN error constants and error strings. */

	String STR_ERROR_STR
	{
		Text [ en-US ] = "Err:" ;
	};
	/* BEGIN defined ERROR.TYPE() values. */
	/* ERROR.TYPE( #NULL! ) == 1 */
	String STR_LONG_ERR_NULL
	{
		Text [ en-US ] = "Error: Ranges do not intersect" ;
	};
	/* ERROR.TYPE( #DIV/0! ) == 2 */
	String STR_LONG_ERR_DIV_ZERO
	{
		Text [ en-US ] = "Error: Division by zero" ;
	};
	/* ERROR.TYPE( #VALUE! ) == 3 */
	String STR_LONG_ERR_NO_VALUE
	{
		Text [ en-US ] = "Error: Wrong data type" ;
	};
	/* ERROR.TYPE( #REF! ) == 4 */
	String STR_LONG_ERR_NO_REF
	{
		Text [ en-US ] = "Error: Not a valid reference" ;
	};
	/* ERROR.TYPE( #NAME! ) == 5 */
	String STR_LONG_ERR_NO_NAME
	{
		Text [ en-US ] = "Error: Invalid name" ;
	};
	/* ERROR.TYPE( #NUM! ) == 6 */
	String STR_LONG_ERR_ILL_FPO
	{
		Text [ en-US ] = "Error: Invalid numeric value" ;
	};
	/* ERROR.TYPE( #N/A ) == 7 */
	String STR_LONG_ERR_NV
	{
		Text [ en-US ] = "Error: Value not available" ;
	};
	/* END defined ERROR.TYPE() values. */
	String STR_NO_ADDIN
	{
		Text [ en-US ] = "#ADDIN?" ;
	};
	String STR_LONG_ERR_NO_ADDIN
	{
		Text [ en-US ] = "Error: Add-in not found" ;
	};
	String STR_NO_MACRO
	{
		Text [ en-US ] = "#MACRO?" ;
	};
	String STR_LONG_ERR_NO_MACRO
	{
		Text [ en-US ] = "Error: Macro not found" ;
	};
	String STR_LONG_ERR_SYNTAX
	{
		Text [ en-US ] = "Internal syntactical error" ;
	};
	String STR_LONG_ERR_ILL_ARG
	{
		Text [ en-US ] = "Error: Invalid argument" ;
	};
	String STR_LONG_ERR_ILL_PAR
	{
		Text [ en-US ] = "Error in parameter list" ;
	};
	String STR_LONG_ERR_ILL_CHAR
	{
		Text [ en-US ] = "Error: Invalid character" ;
	};
	String STR_LONG_ERR_ILL_SEP
	{
		Text [ en-US ] = "Error: Invalid semicolon" ;
	};
	String STR_LONG_ERR_PAIR
	{
		Text [ en-US ] = "Error: in bracketing" ;
	};
	String STR_LONG_ERR_OP_EXP
	{
		Text [ en-US ] = "Error: Operator missing" ;
	};
	String STR_LONG_ERR_VAR_EXP
	{
		Text [ en-US ] = "Error: Variable missing" ;
	};
	String STR_LONG_ERR_CODE_OVF
	{
		Text [ en-US ] = "Error: Formula overflow" ;
	};
	String STR_LONG_ERR_STR_OVF
	{
		Text [ en-US ] = "Error: String overflow" ;
	};
	String STR_LONG_ERR_STACK_OVF
	{
		Text [ en-US ] = "Error: Internal overflow" ;
	};
	String STR_LONG_ERR_CIRC_REF
	{
		Text [ en-US ] = "Error: Circular reference" ;
	};
	String STR_LONG_ERR_NO_CONV
	{
		Text [ en-US ] = "Error: Calculation does not converge" ;
	};

	/* END error constants and error strings. */

	String STR_GRIDCOLOR
	{
		Text [ en-US ] = "Grid color" ;
	};
	String STR_MERGE_NOTEMPTY
	{
		Text [ en-US ] = "Should the contents of the hidden cells be moved into the first cell?" ;
	};
	String STR_CELL_FILTER
	{
		Text [ en-US ] = "Filter" ;
	};
	String STR_TARGETNOTFOUND
	{
		Text [ en-US ] = "The target database range does not exist." ;
	};
	String STR_INVALID_EPS
	{
		Text [ en-US ] = "Invalid increment" ;
	};
	String STR_TABLE_OP
	{
		Text [ en-US ] = "MULTIPLE.OPERATIONS" ;
	};
	String STR_UNDO_TABOP
	{
		Text [ en-US ] = "Multiple operations" ;
	};
	String STR_INVALID_AFNAME
	{
		Text [ en-US ] = "You have entered an invalid name.\nAutoFormat could not be created. \nTry again using a different name." ;
	};
	String STR_AREA
	{
		Text [ en-US ] = "Range" ;
	};
	String STR_YES
	{
		Text [ en-US ] = "Yes" ;
	};
	String STR_NO
	{
		Text [ en-US ] = "No" ;
	};
	String STR_PROTECTION
	{
		Text [ en-US ] = "Protection" ;
	};
	String STR_FORMULAS
	{
		Text [ en-US ] = "Formulas" ;
	};
	String STR_HIDE
	{
		Text [ en-US ] = "Hide" ;
	};
	String STR_PRINT
	{
		Text [ en-US ] = "Print" ;
	};
	String STR_INVALID_AFAREA
	{
		Text [ en-US ] = "To apply an AutoFormat,\na table range of at least\n3x3 cells must be selected." ;
	};
	String STR_CASCADE
	{
		Text [ en-US ] = "(nested)" ;
	};
	String STR_OPTIONAL
	{
		Text [ en-US ] = "(optional)" ;
	};
	String STR_REQUIRED
	{
		Text [ en-US ] = "(required)" ;
	};
	String STR_INVALID
	{
		Text [ en-US ] = "invalid" ;
	};
	String STR_EDITFUNCTION
	{
		Text [ en-US ] = "Edit Function" ;
	};
	String STR_NOTES
	{
		Text [ en-US ] = "Comments" ;
	};
	String STR_QUERY_DELTAB
	{
		Text [ en-US ] = "Are you sure you want to delete the selected sheet(s)?" ;
	};
	String STR_QUERY_DELSCENARIO
	{
		Text [ en-US ] = "Are you sure you want to delete the selected scenario?" ;
	};
	String STR_EXPORT_ASCII_WARNING
	{
		Text [ en-US ] = "Thesaurus is not available" ;
	};
	String STR_IMPORT_ERROR
	{
		Text [ en-US ] = "Spellcheck not available" ;
	};
	String STR_IMPORT_ASCII
	{
		Text [ en-US ] = "Import text files" ;
	};
	String STR_EXPORT_ASCII
	{
		Text [ en-US ] = "Export Text File" ;
	};
	String STR_IMPORT_LOTUS
	{
		Text [ en-US ] = "Import Lotus files" ;
	};
	String STR_IMPORT_DBF
	{
		Text [ en-US ] = "Import dBASE files" ;
	};
	String STR_EXPORT_DBF
	{
		Text [ en-US ] = "dBASE export" ;
	};
	String STR_EXPORT_DIF
	{
		Text [ en-US ] = "Dif Export" ;
	};
	String STR_IMPORT_DIF
	{
		Text [ en-US ] = "Dif Import" ;
	};
	String STR_STYLENAME_STANDARD
	{
		Text [ en-US ] = "Default" ;
	};
	String STR_STYLENAME_RESULT
	{
		Text [ en-US ] = "Result" ;
	};
	String STR_STYLENAME_RESULT1
	{
		Text [ en-US ] = "Result2" ;
	};
	String STR_STYLENAME_HEADLINE
	{
		Text [ en-US ] = "Heading" ;
	};
	String STR_STYLENAME_HEADLINE1
	{
		Text [ en-US ] = "Heading1" ;
	};
	String STR_STYLENAME_REPORT
	{
		Text [ en-US ] = "Report" ;
	};
	String STR_STYLENAME_REPORT1
	{
		Text [ en-US ] = "Report1" ;
	};
	String STR_IMPORT_EXCEL_WARNING
	{
		Text [ en-US ] = "is not available for spellchecking\nPlease check your installation and install \nthe desired language if necessary" ;
	};
	String STR_THESAURUS_NO_STRING
	{
		Text [ en-US ] = "Thesaurus can only be used in text cells!" ;
	};
	String STR_SPELLING_BEGIN_TAB
	{
		Text [ en-US ] = "Should the spellcheck be continued at the beginning of the current sheet?" ;
	};
	String STR_SPELLING_NO_LANG
	{
		Text [ en-US ] = "is not available for the thesaurus.\nPlease check your installation and install \nthe desired language if necessary" ;
	};
	String STR_SPELLING_STOP_OK
	{
		Text [ en-US ] = "The spellcheck of this sheet has been completed." ;
	};
	String STR_NOLANGERR
	{
		Text [ en-US ] = "No language set" ;
	};
	String STR_UNDO_INSERT_TAB
	{
		Text [ en-US ] = "Insert Sheet" ;
	};
	String STR_UNDO_DELETE_TAB
	{
		Text [ en-US ] = "Delete Sheets" ;
	};
	String STR_UNDO_RENAME_TAB
	{
		Text [ en-US ] = "Rename Sheet" ;
	};
	String STR_UNDO_SET_TAB_BG_COLOR
	{
		Text [ en-US ] = "Color Tab" ;
	};
	String STR_UNDO_SET_MULTI_TAB_BG_COLOR
	{
		Text [ en-US ] = "Color Tabs" ;
	};
	String STR_UNDO_MOVE_TAB
	{
		Text [ en-US ] = "Move Sheets" ;
	};
	String STR_UNDO_COPY_TAB
	{
		Text [ en-US ] = "Copy Sheet" ;
	};
	String STR_UNDO_APPEND_TAB
	{
		Text [ en-US ] = "Append sheet" ;
	};
	String STR_UNDO_SHOWTAB
	{
		Text [ en-US ] = "Show Sheet" ;
	};
	String STR_UNDO_HIDETAB
	{
		Text [ en-US ] = "Hide sheet" ;
	};
	String STR_UNDO_TAB_RTL
	{
		Text [ en-US ] = "Flip sheet" ;
	};
	String STR_UNDO_TAB_R1C1
	{
		Text [ en-US ] = "Toggle the use of R1C1 notation" ;
	};
	String STR_CHART_MAINTITLE
	{
		Text [ en-US ] = "Main Title" ;
	};
	String STR_CHART_SUBTITLE
	{
		Text [ en-US ] = "Subtitle" ;
	};
	String STR_CHART_XTITLE
	{
		Text [ en-US ] = "X axis title" ;
	};
	String STR_CHART_YTITLE
	{
		Text [ en-US ] = "Y axis title" ;
	};
	String STR_CHART_ZTITLE
	{
		Text [ en-US ] = "Z axis title" ;
	};
	String STR_ABSREFLOST
	{
		Text [ en-US ] = "The new table contains absolute references to other tables which may be incorrect!" ;
	};
	String STR_NAMECONFLICT
	{
		Text [ en-US ] = "Due to identical names, an existing range name in the destination document has been altered!" ;
	};
	String STR_ERR_AUTOFILTER
	{
		Text [ en-US ] = "AutoFilter not possible" ;
	};
	String STR_MSSG_SEARCHANDREPLACE_1
	{
		Text [ en-US ] = "%PRODUCTNAME Calc has searched to the beginning of the sheet. Do you want to continue at the end?" ;
	};
	String STR_MSSG_SEARCHANDREPLACE_2
	{
		Text [ en-US ] = "%PRODUCTNAME Calc has searched to the end of the sheet. Do you want to continue at the beginning?" ;
	};
	String STR_MSSG_SEARCHANDREPLACE_3
	{
		Text [ en-US ] = "Find & Replace" ;
	};
	String STR_MSSG_SEARCHANDREPLACE_4
	{
		Text [ en-US ] = "%PRODUCTNAME Calc has searched to the beginning of the document. Do you want to continue at the end?" ;
	};
	String STR_MSSG_SEARCHANDREPLACE_5
	{
		Text [ en-US ] = "%PRODUCTNAME Calc has searched to the end of the document. Do you want to continue at the beginning?" ;
	};
	String STR_CREATENAME_REPLACE
	{
		Text [ en-US ] = "Replace existing definition of #?" ;
	};
	String STR_CREATENAME_MARKERR
	{
		Text [ en-US ] = "Invalid selection for range names" ;
	};
	String STR_CONSOLIDATE_ERR1
	{
		Text [ en-US ] = "References can not be inserted above the source data." ;
	};
	String STR_SCENARIO_NOTFOUND
	{
		Text [ en-US ] = "Scenario not found" ;
	};
	String STR_QUERY_DELENTRY
	{
		Text [ en-US ] = "Do you really want to delete the entry #?" ;
	};
	String STR_VOBJ_OBJECT
	{
		Text [ en-US ] = "Objects/graphics" ;
	};
	String STR_VOBJ_CHART
	{
		Text [ en-US ] = "Charts" ;
	};
	String STR_VOBJ_DRAWINGS
	{
		Text [ en-US ] = "Drawing Objects" ;
	};
	String STR_VOBJ_MODE_SHOW
	{
		Text [ en-US ] = "Show" ;
	};
	String STR_VOBJ_MODE_HIDE
	{
		Text [ en-US ] = "Hide" ;
	};
	String STR_SCATTR_PAGE_TOPDOWN
	{
		Text [ en-US ] = "Top to bottom" ;
	};
	String STR_SCATTR_PAGE_LEFTRIGHT
	{
		Text [ en-US ] = "Left-to-right" ;
	};
	String STR_SCATTR_PAGE_NOTES
	{
		Text [ en-US ] = "Comments" ;
	};
	String STR_SCATTR_PAGE_GRID
	{
		Text [ en-US ] = "Grid" ;
	};
	String STR_SCATTR_PAGE_HEADERS
	{
		Text [ en-US ] = "Row & Column Headers" ;
	};
	String STR_SCATTR_PAGE_FORMULAS
	{
		Text [ en-US ] = "Formulas" ;
	};
	String STR_SCATTR_PAGE_NULLVALS
	{
		Text [ en-US ] = "Zero Values" ;
	};
	String STR_SCATTR_PAGE_PRINTDIR
	{
		Text [ en-US ] = "Print direction" ;
	};
	String STR_SCATTR_PAGE_FIRSTPAGENO
	{
		Text [ en-US ] = "First page number" ;
	};
	String STR_SCATTR_PAGE_SCALE
	{
		Text [ en-US ] = "Reduce/enlarge printout" ;
	};
	String STR_SCATTR_PAGE_SCALETOPAGES
	{
		Text [ en-US ] = "Fit print range(s) on number of pages" ;
	};
	String STR_SCATTR_PAGE_SCALETO
	{
		Text [ en-US ] = "Fit print range(s) to width/height" ;
	};
	String STR_SCATTR_PAGE_SCALE_WIDTH
	{
		Text [ en-US ] = "Width" ;
	};
	String STR_SCATTR_PAGE_SCALE_HEIGHT
	{
		Text [ en-US ] = "Height" ;
	};
	String STR_SCATTR_PAGE_SCALE_PAGES
	{
		Text [ en-US ] = "%1 page(s)" ;
	};
	String STR_SCATTR_PAGE_SCALE_AUTO
	{
		Text [ en-US ] = "automatic" ;
	};
	String STR_DOC_STAT
	{
		Text [ en-US ] = "Statistics" ;
	};
	String STR_LINKERROR
	{
		Text [ en-US ] = "The link could not be updated." ;
	};
	String STR_LINKERRORFILE
	{
		Text [ en-US ] = "File:" ;
	};
	String STR_LINKERRORTAB
	{
		Text [ en-US ] = "Sheet:" ;
	};
	String STR_OVERVIEW
	{
		Text [ en-US ] = "Overview" ;
	};
	String STR_DOC_INFO
	{
		Text [ en-US ] = "Doc.Information" ;
	};
	String STR_DOC_CREATED
	{
		Text [ en-US ] = "Created" ;
	};
	String STR_DOC_MODIFIED
	{
		Text [ en-US ] = "Modified" ;
	};
	String STR_DOC_PRINTED
	{
		Text [ en-US ] = "Printed" ;
	};
	String STR_DOC_THEME
	{
		Text [ en-US ] = "Subject" ;
	};
	String STR_DOC_KEYWORDS
	{
		Text [ en-US ] = "Key words" ;
	};
	String STR_DOC_COMMENT
	{
		Text [ en-US ] = "Comments" ;
	};
	String STR_BY
	{
		Text [ en-US ] = "by" ;
	};
	String STR_ON
	{
		Text [ en-US ] = "on" ;
	};
	String STR_RELOAD_TABLES
	{
		Text [ en-US ] = "This file contains links to other files.\nShould they be updated?" ;
	};
	String STR_REIMPORT_AFTER_LOAD
	{
		Text [ en-US ] = "This file contains queries. The results of these queries were not saved.\nDo you want these queries to be repeated?" ;
	};
	String STR_FILTER_TOOMANY
	{
		Text [ en-US ] = "Too many conditions" ;
	};
	String STR_INSERT_FULL
	{
		Text [ en-US ] = "Filled cells cannot be shifted\nbeyond the sheet." ;
	};
	String STR_TABINSERT_ERROR
	{
		Text [ en-US ] = "The table could not be inserted." ;
	};
	String STR_TABREMOVE_ERROR
	{
		Text [ en-US ] = "The sheets could not be deleted." ;
	};
	String STR_PASTE_ERROR
	{
		Text [ en-US ] = "The contents of the clipboard could not be pasted." ;
	};
	String STR_PASTE_FULL
	{
		Text [ en-US ] = "There is not enough space on the sheet to insert here." ;
	};
	String STR_PASTE_BIGGER
	{
		Text [ en-US ] = "The content of the clipboard is bigger than the range selected.\nDo you want to insert it anyway?" ;
	};
	String STR_ERR_NOREF
	{
		Text [ en-US ] = "No references found." ;
	};
	String STR_ERR_LINKOVERLAP
	{
		Text [ en-US ] = "Source and destination must not overlap." ;
	};
	String STR_GRAPHICNAME
	{
		Text [ en-US ] = "Graphics" ;
	};
	String STR_INVALIDNAME
	{
		Text [ en-US ] = "Invalid name." ;
	};
	String STR_VALID_MACRONOTFOUND
	{
		Text [ en-US ] = "Selected macro not found." ;
	};
	String STR_VALID_DEFERROR
	{
		Text [ en-US ] = "Invalid value." ;
	};
	String STR_PROGRESS_CALCULATING
	{
		Text [ en-US ] = "calculating" ;
	};
	String STR_PROGRESS_SORTING
	{
		Text [ en-US ] = "sorting" ;
	};
	String STR_PROGRESS_HEIGHTING
	{
		Text [ en-US ] = "Adapt row height" ;
	};
	String STR_PROGRESS_COMPARING
	{
		Text [ en-US ] = "Compare #" ;
	};
	String STR_DETINVALID_OVERFLOW
	{
		Text [ en-US ] = "The maximum number of invalid cells has been exceeded.\nNot all invalid cells have been marked." ;
	};
	String STR_QUICKHELP_DELETE
	{
		Text [ en-US ] = "Delete contents" ;
	};
	String STR_QUICKHELP_REF
	{
		Text [ en-US ] = "%1 R x %2 C" ;
	};
	String STR_FUNCTIONLIST_MORE
	{
		Text [ en-US ] = "More..." ;
	};
	String STR_ERR_INVALID_AREA
	{
		Text [ en-US ] = "Invalid range" ;
	};
	 // Templates for data pilot tables.
	String STR_PIVOT_STYLE_INNER
	{
		Text [ en-US ] = "Pivot Table Value" ;
	};
	String STR_PIVOT_STYLE_RESULT
	{
		Text [ en-US ] = "Pivot Table Result" ;
	};
	String STR_PIVOT_STYLE_CATEGORY
	{
		Text [ en-US ] = "Pivot Table Category" ;
	};
	String STR_PIVOT_STYLE_TITLE
	{
		Text [ en-US ] = "Pivot Table Title" ;
	};
	String STR_PIVOT_STYLE_FIELDNAME
	{
		Text [ en-US ] = "Pivot Table Field" ;
	};
	String STR_PIVOT_STYLE_TOP
	{
		Text [ en-US ] = "Pivot Table Corner" ;
	};
	String STR_OPERATION_FILTER
	{
		Text [ en-US ] = "Filter" ;
	};
	String STR_OPERATION_SORT
	{
		Text [ en-US ] = "Sort" ;
	};
	String STR_OPERATION_SUBTOTAL
	{
		Text [ en-US ] = "Subtotals" ;
	};
	String STR_OPERATION_NONE
	{
		Text [ en-US ] = "None" ;
	};
	String STR_IMPORT_REPLACE
	{
		Text [ en-US ] = "Do you want to replace the contents of #?" ;
	};
	String STR_TIP_WIDTH
	{
		Text [ en-US ] = "Width:" ;
	};
	String STR_TIP_HEIGHT
	{
		Text [ en-US ] = "Height:" ;
	};
	String STR_TIP_HIDE
	{
		Text [ en-US ] = "Hide" ;
	};
	String STR_ERR_INSERTOBJ
	{
		Text [ en-US ] = "The object could not be inserted." ;
	};
	String STR_CHANGED_BLANK
	{
		Text [ en-US ] = "<empty>" ;
	};
	String STR_CHANGED_CELL
	{
		Text [ en-US ] = "Cell #1 changed from '#2' to '#3'" ;
	};
	String STR_CHANGED_INSERT
	{
		Text [ en-US ] = "#1 inserted" ;
	};
	String STR_CHANGED_DELETE
	{
		Text [ en-US ] = "#1 deleted" ;
	};
	String STR_CHANGED_MOVE
	{
		Text [ en-US ] = "Range moved from #1 to #2" ;
	};
	String STR_END_REDLINING_TITLE
	{
		Text [ en-US ] = "Exit Recording" ;
	};
	String STR_END_REDLINING
	{
		Text [ en-US ] = "This action will exit the change recording mode.\nAny information about changes will be lost.\n\nExit change recording mode?\n\n" ;
	};
	String STR_CLOSE_ERROR_LINK
	{
		Text [ en-US ] = "The document can not be closed while a link is being updated." ;
	};
	String STR_UNDO_RESIZEMATRIX
	{
		Text [ en-US ] = "Adapt array area" ;
	};
	String STR_TIP_RESIZEMATRIX
	{
		Text [ en-US ] = "Array formula %1 R x %2 C" ;
	};
	String STR_MACRO_WARNING
	{
		Text [ en-US ] = "This document contains macro function calls.\nDo you want to run them?" ;
	};

	String STR_UNDO_HANGULHANJA
	{
		Text [ en-US ] = "Hangul/Hanja Conversion" ;
	};

	String STR_NAME_INPUT_CELL
	{
		Text [ en-US ] = "Select Cell" ;
	};
	String STR_NAME_INPUT_RANGE
	{
		Text [ en-US ] = "Select Range" ;
	};
	String STR_NAME_INPUT_DBRANGE
	{
		Text [ en-US ] = "Select Database Range" ;
	};
	String STR_NAME_INPUT_ROW
	{
		Text [ en-US ] = "Go To Row" ;
	};
	String STR_NAME_INPUT_SHEET
	{
		Text [ en-US ] = "Go To Sheet" ;
	};
	String STR_NAME_INPUT_DEFINE
	{
		Text [ en-US ] = "Define Name for Range" ;
	};
	String STR_NAME_ERROR_SELECTION
	{
		Text [ en-US ] = "The selection needs to be rectangular in order to name it." ;
	};
	String STR_NAME_ERROR_NAME
	{
		Text [ en-US ] = "You must enter a valid reference or type a valid name for the selected range." ;
	};

	String STR_CHANGED_MOVE_REJECTION_WARNING
	{
		Text [ en-US ] = "WARNING: This action may have resulted in unintended changes to cell references in formulas." ;
	};

	String STR_CHANGED_DELETE_REJECTION_WARNING
	{
		Text [ en-US ] = "WARNING: This action may have resulted in references to the deleted area not being restored." ;
	};

	String STR_HF_NONE_IN_BRACKETS
	{
		Text [ en-US ] = "(none)" ;
	};

	String STR_HF_OF
	{
		Text [ en-US ] = "of" ;
	};

	String STR_HF_OF_QUESTION
	{
		Text [ en-US ] = "of ?" ;
	};

	String STR_HF_CREATED_BY
	{
		Text [ en-US ] = "Created by" ;
	};

	String STR_HF_CONFIDENTIAL
	{
		Text [ en-US ] = "Confidential" ;
	};

	String STR_HF_CUSTOMIZED
	{
		Text [ en-US ] = "Customized" ;
	};

	String STR_HF_CUSTOM_FOOTER
	{
		Text [ en-US ] = "Custom footer" ;
	};

	String STR_UNDO_CHINESE_TRANSLATION
	{
		Text [ en-US ] = "Chinese conversion" ;
	};

	String STR_ERR_DATAPILOT_INPUT
	{
		Text [ en-US ] = "You cannot change this part of the pivot table." ;
	};

	String STR_RECALC_MANUAL
	{
		Text [ en-US ] = "Manual" ;
	};
	String STR_RECALC_AUTO
	{
		Text [ en-US ] = "Automatic" ;
	};
	String STR_ERR_LONG_NESTED_ARRAY
	{
	Text [ en-US ] = "Nested arrays are not supported." ;
	};
	String STR_UNDO_TEXTTOCOLUMNS
	{
		Text [ en-US ] = "Text to Columns" ;
	};
	String STR_DOC_UPDATED
	{
		Text [ en-US ] = "Your spreadsheet has been updated with changes saved by other users." ;
	};
	String STR_DOC_WILLBESAVED
	{
		Text [ en-US ] = "The spreadsheet must be saved now to activate sharing mode.\n\nDo you want to continue?" ;
	};
	String STR_DOC_WILLNOTBESAVED
	{
		Text [ en-US ] = "Already resolved merge conflicts will be lost and your changes to the shared spreadsheet will not be saved.\n\nDo you want to continue?" ;
	};
	String STR_DOC_DISABLESHARED
	{
		Text [ en-US ] = "Disabling shared mode of a spreadsheet hinders all other users of the shared spreadsheet to merge back their work.\n\nDo you want to continue?" ;
	};
	String STR_DOC_NOLONGERSHARED
	{
		Text [ en-US ] = "This spreadsheet is no longer in shared mode.\n\nSave your spreadsheet to a separate file and merge your changes to the shared spreadsheet manually." ;
	};
	String STR_SHARED_DOC_WARNING
	{
		Text [ en-US ] = "The spreadsheet is in shared mode. This allows multiple users to access and edit the spreadsheet at the same time.\n\nChanges to formatting attributes like fonts, colors, and number formats will not be saved and some functionalities like editing charts and drawing objects are not available in shared mode. Turn off shared mode to get exclusive access needed for those changes and functionalities." ;
	};
	String STR_FILE_LOCKED_TRY_LATER
	{
		Text [ en-US ] = "The shared spreadsheet file is locked due to a merge in progress by user: '%1'\n\nSharing mode of a locked file cannot be disabled. Try again later." ;
	};
	String STR_FILE_LOCKED_SAVE_LATER
	{
		Text [ en-US ] = "The shared spreadsheet file is locked due to a merge in progress by user: '%1'\n\nTry again later to save your changes." ;
	};
	String STR_UNKNOWN_USER
	{
		Text [ en-US ] = "Unknown User" ;
	};
	String STR_STYLE_FAMILY_CELL
	{
		Text [ en-US ] = "Cell Styles" ;
	};
	String STR_STYLE_FAMILY_PAGE
	{
		Text [ en-US ] = "Page Styles" ;
	};
	String STR_ERR_DATAPILOTSOURCE
	{
		Text [ en-US ] = "Pivot table source data is invalid." ;
	};
	String STR_PIVOT_FIRSTROWEMPTYERR
	{
		Text [ en-US ] = "The field name cannot be empty. Check the first row of data source to make sure there are no empty cells." ;
	};
	String STR_PIVOT_ONLYONEROWERR
	{
		Text [ en-US ] = "Pivot table needs at least two rows of data to create or refresh." ;
	};
	String STR_DPFIELD_GROUP_BY_SECONDS
	{
		Text [ en-US ] = "Seconds" ;
	};
	String STR_DPFIELD_GROUP_BY_MINUTES
	{
		Text [ en-US ] = "Minutes" ;
	};
	String STR_DPFIELD_GROUP_BY_HOURS
	{
		Text [ en-US ] = "Hours" ;
	};
	String STR_DPFIELD_GROUP_BY_DAYS
	{
		Text [ en-US ] = "Days" ;
	};
	String STR_DPFIELD_GROUP_BY_MONTHS
	{
		Text [ en-US ] = "Months" ;
	};
	String STR_DPFIELD_GROUP_BY_QUARTERS
	{
		Text [ en-US ] = "Quarters" ;
	};
	String STR_DPFIELD_GROUP_BY_YEARS
	{
		Text [ en-US ] = "Years" ;
	};
};

// ********************************************************************** EOF
