Unstructured Excel

Unstructured Excel parser is designed to handle Excel files without specific formatting requirements.

Christos Balafoutis avatar
Written by Christos Balafoutis
Updated over a week ago

This flexible parser is tailored for Excel files without specific formatting constraints. You can upload and download single-language files, maintain original formatting, handle merged cells, and enjoy various other features.

You can find more information about the capabilities of our parser below.

File Extension(s)

.xlsx, .xlsm, .xltx, .xltm

i18n type(s)

XLSX_UNSTRUCTURED

Source and translation strings reside in separate Excel files. When you upload existing translations for a specific language, please make sure that the Excel file contains strings in that language exclusively. Likewise, downloading a translation file from Transifex will include translations for the specified language only.

📝 Note: If you wish to consolidate all languages into a single sheet, please refer to our Excel parser, detailed here.


Examples of Excel Files

Here are some examples of excel files and the content inside that can be handled by the parser.

Example #1

Example #2

Example #3


How It Works

When an Excel file containing source content for translation is uploaded, the Transifex parser includes all extracted strings in the project's source language. If source strings reside in multiple sheets, the parser identifies and extracts these strings from all sheets, consolidating them into a single resource within Transifex.

Parsing Behavior

When processing Excel files, our parser begins by parsing the names of the sheets. Subsequently, it moves through the content by starting from the first sheet and then navigating through all sheets in the order presented in the spreadsheet. Additionally, it reads the content horizontally within each sheet. This means that it processes cells in a left-to-right, top-to-bottom fashion—beginning with A1 and moving sequentially through the rows and columns.

This parsing strategy ensures that each piece of content is accurately captured and processed according to its location in the Excel file.

Developer Notes

When strings are created in Transifex, a developer note is associated with each string, containing the name of the sheet(s) to which the specific string belongs.

Formulas

When a text value results from a formula, it is not considered translatable text. After requesting a translation file export, these formulas will remain intact in the exported localized version.

An exception is made for formulas of the type: HYPERLINK("https://app.transifex.com", "transifex"). The link is treated as a translatable string (specifically, the "transifex" part). After requesting a translation file export, the formula remains intact, and the translatable text is provided in the corresponding target language.

It's important to note that utilizing LOOKUP in your sheets might result in encountering N/A values in the localized version of Excel. This discrepancy arises because the localized text may no longer align with the criteria for your lookup.

📝Note:

  • Sheet names are treated as translatable strings.

  • Cell comments, images, numeric values, dates, and formulas are excluded from the translation process (ignored during parsing). However, they are reintegrated into the file when translations are requested.

  • Labels and titles within graphs embedded in sheets are treated as translatable content.

How Duplicate Strings Are Handled

If duplicate source strings are identified across sheets, only one instance will be processed and stored in Transifex. In this case, a singular source string will be generated, with its key determined by a hash derived from the source text of the string.

Duplicate Strings Example

Sheet: A

  • Source String: Please provide your username

Sheet: B

  • Source String: Please provide your username

Sheet: C

  • Source String: Please provide your username

Transifex

  • Source String: Please provide your username

  • String's Key: Please provide your username

  • Strings's Hash: f9bee922b8761aaab7469250d496139d

Formatting & Original Structure

When formatting is applied to source strings, it is represented using <tx> placeholders in the Transifex Web Editor. The translation should also preserve these placeholders to ensure consistent formatting across languages.

You can enable translation checks described here to make sure these tags are preserved in the translation. If the translator does not adhere to the correct number and position of these placeholders, a warning or error will be displayed in the editor.

Formatting Tags Examples

Let's say that in your Cell A1, you have the source string "Hello World". In the Transifex Web Editor, translators will see this string as <tx>Hello</tx><tx>World</tx>.

Case #1: Formatting tags are not preserved

Let's say that the translator submits the translation "Bonjour Le Monde" instead of <tx>Bonjour</tx><tx>Le Monde</tx>. Consequently, when the translation is applied to Cell A1 in Excel, the result lacks the original formatting, and the content appears as "Bonjour Le Monde" without any styling.

Case #2: Fewer tags are included in the translation compared to the source

Let's say that the translator submits the translation <tx>Bonjour Le Monde</tx> instead of <tx>Bonjour</tx><tx>Le Monde</tx>. Consequently, when the translation is applied to Cell A1 in Excel, the result lacks the original formatting, and the content appears as "Bonjour Le Monde" without any styling.

Case #3: Additional tags are included in the translation compared to the source

Let's say that the translator submits the translation <tx>Bonjour</tx><tx>Bonjour </tx><tx>Le Monde</tx> instead of <tx>Bonjour</tx><tx>Le Monde</tx>. Consequently, when the translation is applied to Cell A1 in Excel, the result will be <tx>Bonjour</tx><tx>Bonjour Le Monde</tx>, i.e., these additional tags will be merged into the last styled component of the original text during the compilation process.

Case #3: Words are added outside the formatting tags

Let's say that the translator submits the translation <tx>Bonjour</tx><tx>Le Monde</tx>Have a Great Day instead of <tx>Bonjour</tx><tx>Le Monde</tx>. These additional words will be merged into the last styled component of the original text during the compilation process.

Spaces Example

Consider the case where there are two strings in an Excel file:

  • String #1: " Hello World. "

  • String #2: "Hello World"

The parser will treat these strings as different ones, creating separate strings in Transifex for each of them.

📝Note:

  • For RTL languages, the sheets in the Excel file will be designated as right-to-left when the translation files are requested.

  • If merged cells are present in the source file, they will be retained across all language files upon export.


Downloading options

  1. Download for use: Any untranslated entries will be returned in the source language.

  2. ​Download file to translate: Any untranslated entries will be returned in the source language.

  3. Download only reviewed translations: Any untranslated string or unreviewed translation will be returned in the source language.

  4. Download for translation as XLIFF: The file will be generated in the .xliff format and include both translated and untranslated strings. The latter ones will be returned without containing target elements.

  5. Download untranslated strings as XLIFF: The translation file will be generated in the .xliff format and include only the untranslated strings.


Parser behavior

The following table summarizes the results returned depending on download mode:

*The results are compatible with parser version 1.


💡Tip

Looking for more help? Get support from our Transifex Community Forum!

Find answers or post to get help from Transifex Support and our Community.

Did this answer your question?