+++
title = "Propiedades"
weight = 1
+++


### is_cell

Verdadero (True) si el rango es de una sola celda.

```python
hoja = app.active_sheet

celda = hoja['A1']
app.debug(celda.is_cell)

rango = hoja['A1:C5']
app.debug(rango.is_cell)
```


### name

Devuelve la dirección de la celda o rango como texto.

```python
hoja = app.active_sheet

celda = hoja['A1']
app.debug(celda.name)

rango = hoja['A1:C5']
app.debug(rango.name)
```


### address

Devuelve la dirección de la celda como una estructura: `com.sun.star.table.CellAddress`

```python
hoja = app.active_sheet

celda = hoja['A1']
if celda.is_cell:
    app.debug(celda.address)
```


### range_address

Devuelve la dirección del rango como una estructura: `com.sun.star.table.CellRangeAddress`

```python
hoja = app.active_sheet

rango = hoja['A1:C5']
if not rango.is_cell:
    app.debug(rango.range_address)
```


### filas y columnas

Devolver el tamaño del rango en filas y columnas.

```python
hoja = app.active_sheet

rango = hoja['A1:E100']
filas = len(rango)
columnas = rango.len_columns
app.debug(filas, columnas)
```


### sheet

Devuelve la hoja padre.

```python
rango = hoja['A1:C5']

hoja = rango.sheet
app.debug(hoja)
```


### doc

Devuelve el documento padre.

```python
rango = hoja['A1:C5']

doc = rango.doc
app.debug(doc)
```


### style

Devuelve o aplica el estilo de celda.

```python
rango = hoja['A1:C5']
rango.style = 'Good'
```


### current_region

Devuelve la región actual.

```python
celda = hoja['A1']
rango = celda.current_region
app.debug(rango)
```


### range_data

Devuelve la región actual del rango excepto la primer fila.

```python
celda = hoja['A1']
rango = celda.range_data
app.debug(rango)
```


### back_color

Devuelve o aplica el color de fondo del rango.

```python
rango = hoja['A1:E10']
rango.back_color = 'red'
```

### type

Devuelve el tipo de contenido de la celda: texto, número o formula.

```python
celda = hoja['A1']
app.debug(celda.type)
```

### error

Si la celda tiene una formula con error, devuelve el número de error.

```python
celda = hoja['A1']
app.debug(celda.error)
```


### string

Devuelve o establece el contenido de la celda como texto.

```python
celda = hoja['A1']
celda.string = 'Maldito Mundo'
app.debug(celda.type, celda.string)

celda = hoja['A2']
celda.string = 12345
app.debug(celda.type, celda.string)
```


### float

Devuelve o establece el contenido de la celda como valor.

```python
celda = hoja['A1']
celda.float = 12345
app.debug(celda.type, celda.float)
```


### formula

Devuelve o establece la formula de la celda.

```python
celda = hoja['A1']
celda.formula = '=RAND()'
app.debug(celda.type, celda.formula)
```


### date

Devuelve o establece el contenido de la celda como fecha.

```python
celda = hoja['A1']
celda.date = app.dates.date(1974, 1, 15)
app.debug(type(celda.date), celda.date)
```

```
20/08/2022 18:38:53 - DEBUG - <class 'datetime.date'>   1974-01-15
```

### time

Devuelve o establece el contenido de la celda como tiempo.

```python
celda = hoja['A1']
celda.time = app.dates.time(10, 11, 12)
app.debug(type(celda.time), celda.time)
```


### datetime

Devuelve o establece el contenido de la celda como fecha y tiempo.

```python
celda = hoja['A1']
celda.datetime = app.dates.datetime(1974, 1, 15, 10, 11, 12)
app.debug(type(celda.datetime), celda.datetime)
```

### value

Devuelve o establece el valor de la celda, estableciendo el tipo de dato automáticamente.

```python
hoja = app.active_sheet

celda = hoja['A1']
celda.value = 'Soy Texto'
app.debug(celda.type, celda.value)

celda = hoja['A2']
celda.value = 12345
app.debug(celda.type, celda.value)

celda = hoja['A3']
celda.value = '=RAND()'
app.debug(celda.type, celda.value)

celda = hoja['A4']
celda.value = app.dates.date(1974, 1, 15)
app.debug(celda.type, celda.value)
```


### data_array

Devuelve o establece los datos de un rango. Es un alias de DataArray.

```python
rango = app.selection
datos = rango.data_array
app.debug(datos)
rango.data_array = datos
```

{{% notice warning %}}
El tamaño de los datos, debe ser **exactamente** del tamaño del rango destino. De lo contrario obtendrá un error.
{{% /notice %}}


### formula_array

Devuelve o establece los datos de un rango. Es un alias de FormulaArray.

```python
rango = app.selection

datos = rango.data_array
app.debug(datos)
datos = rango.formula_array
app.debug(datos)
rango.formula_array = datos
```

{{% notice tip %}}
**data_array** devolverá los resultados de las celdas con formulas. **formula_array** devolverá las formulas en dichas celdas.
{{% /notice %}}


### data

Alias de `data_array` al obtener los datos. Al establecer los datos, si es un rango se comporta como `data_array`, pero si es una celda, se autoajusta al tamaño de los datos.

```python
hoja = app.active_sheet
celda = hoja['A1']
datos = (
    (1, 'Uno'),
    (2, 'Dos'),
    (3, 'Tres'),
)

celda.data = datos
app.debug(celda.current_region.data)
```

{{% notice tip %}}
Siempre valide que haya suficientes celdas libres para los datos para evitar sobreescribirlos.
{{% /notice %}}


### dict

Devuelve o establece los datos como diccionarios.

```python
hoja = app.active_sheet
celda = hoja['A1']

datos = (
    {'No': 1, 'Nombre': 'Ingrid'},
    {'No': 2, 'Nombre': 'Sophia'},
    {'No': 3, 'Nombre': 'Scarlette'},
)

celda.dict = datos
app.debug(celda.current_region.dict)
```


### next_free

Devuelve la siguiente celda libre después de la región actual.

```python
hoja = app.active_sheet
celda = hoja['A1']

celda_libre = celda.next_free
app.debug(celda_libre)
```
