# Write Column

> Write Column activity that writes a single column of data to a sheet in a LibreOffice Calc spreadsheet, relative to an anchor range.

`UiPath.LibreOfficeCalc.Activities.WriteColumn`

:::note
The **LibreOffice Calc** activities package is available in preview.
:::

## Description

Writes a single column of data to a sheet in the specified spreadsheet, relative to an anchor range.

This activity writes one column of data to a LibreOffice Calc spreadsheet. The column is written relative to an anchor range, and you control whether it is appended to the right, overwritten, or inserted. You can provide the column data either as a `System.Data.DataColumn` or as an array of values.

Each value is written as if it were typed into the cell, using invariant formatting, so what gets stored does not depend on the robot's regional settings. A number is stored as a number, and a value starting with `=` is written as a formula and calculated. Dates, times, and booleans are stored as their underlying number, as described for the [Write Cell](https://docs.uipath.com/activities/other/latest/productivity/libreoffice-calc-write-cell) activity.

:::note
This package requires LibreOffice to be installed, and runs on Windows x64 or macOS 13.3 or later on Apple Silicon.
:::

## Project compatibility

Windows | Cross-platform

## Configuration

You can configure the activity and its properties as follows:

* **File path** - The path to the spreadsheet file (`.ods`, `.xlsx`, `.csv`). The field also accepts a file resource through the **Use resource file** option in the plus menu, which replaces this field with **Resource file**. When the activity is placed inside a **Use Spreadsheet Document** scope, this field is replaced by **Spreadsheet document**, which is bound to the document opened by the scope.
* **Sheet** - The name of the sheet to write to, for example, `Sheet1`. The field lists the sheets found in the selected file, and you can also type a name or an expression.
* **Range** - The anchor range in A1 notation, for example, `B2` or `B2:B11`. It determines where the column is written, appended, or inserted. If empty, the sheet's used range is used.
* **How to write** - How to add the data to the indicated range. Select one of the following options:
  + **Append right** - Writes to the right of the existing data. This is the default option.
  + **Overwrite** - Writes over the existing cells at the position.
  + **Insert** - Shifts existing columns right, then writes.
* **Column position** - The column index, relative to the range, where to write. Applies only to the **Overwrite** and **Insert** write modes.
* **What to write** - Selects which input provides the column data: **Data column** or **Array of values**. Defaults to **Data column**.
* **Data column** - The column data, as a `System.Data.DataColumn`. Used when **What to write** is set to **Data column**.
* **Array column** - The column data, as an enumerable of values. Used when **What to write** is set to **Array of values**.

:::note
For more details on the plus menu options, see [Designing automations](https://docs.uipath.com/studio/standalone/latest/user-guide/designing-automations).
:::

### Properties panel

#### Options
* **Password** - The password to open a password-protected spreadsheet file. Leave empty for unprotected files.
