Compartilhar via


Como trabalhar com o acesso condicional

Este tópico aborda a classe Open XML SDK ConditionalFormatting e como se relaciona com o esquema Open XML File Format SpreadsheetML. Para obter mais informações sobre a estrutura geral das partes e elementos que compõem um documento de Folha de CálculoML, veja Estrutura de um documento de Folha de CálculoML.


Formatação Condicional na Folha de CálculoML

A formatação condicional baseada em células fornece estrutura aos dados dentro de uma folha de cálculo. Mostrar cores, além de mostrar um valor, ajuda a distinguir a altura relativa desses valores. Existem várias opções de formatação que pode aplicar às células com base no respetivo valor. Pode realçar a maioria dos itens na parte superior ou inferior, fornecer barras de dados para mostrar uma interface de utilizador do tipo de barra de progresso ou utilizar escalas de cores para indicar os altos e baixos. A formatação condicional é aplicável diretamente a uma célula numa folha de cálculo. O valor não tem de fazer parte de uma tabela.

Todas as definições de formatação condicional são armazenadas ao nível da folha de cálculo. A folha de cálculo armazena um <conditionalFormatting/> elemento para cada formato aplicado a uma célula ou série de células. A coleção de células nas quais o formato é aplicado é definida com o sqref atributo . O sqref atributo especifica um intervalo de células com a notação "de:para", por exemplo "A1:A10".

A tabela seguinte lista as classes comuns do SDK Open XML utilizadas ao trabalhar com a ConditionalFormatting classe .

Elemento SpreadsheetML Abrir Classe SDK XML
<cfRule/> ConditionalFormattingRule
<dataBar/> DataBar
<colorScale/> ColorScale
<iconSet/> IconSet

Open XML SDK Conditional Formatting Class

A classe Open XML SDK ConditionalFormatting representa o elemento de tabela (<conditionalFormatting/>) definido no esquema Open XML File Format para documentos de Folha de CálculoML. Utilize a ConditionalFormatting classe para manipular elementos individuais <conditionalFormatting/> num documento de Folha de CálculoML.

As seguintes informações da especificação ISO/IEC 29500 introduzem o ConditionalFormatting elemento (<conditionalFormatting/>).

Um Formato Condicional é um formato, como o sombreado das células ou a cor do tipo de letra, que uma aplicação de folha de cálculo pode aplicar automaticamente às células se uma condição especificada for verdadeira. Esta coleção expressa regras de formatação condicional aplicadas a uma determinada célula ou intervalo.

Exemplo: este exemplo aplica uma regra "top10" às células C3:C8. Faz @dxfId referência à formatação (definida na parte estilos) a aplicar às células que correspondem aos critérios.

    <conditionalFormatting sqref="C3:C8">
        <cfRule type="top10" dxfId="1" priority="3" rank="2"/>
    </conditionalFormatting>

© ISO/IEC 29500: 2016

Classe de Regra de Formatação Condicional

As seguintes informações da especificação ISO/IEC 29500 introduzem o ConditionalFormattingRule elemento (<cfRule/>).

Esta coleção representa uma descrição de uma regra de formatação condicional.

Exemplo:

Este exemplo mostra uma regra de formatação condicional a realçar células cujos valores são superiores a 0,5. Tenha em atenção que, neste caso, o conteúdo de <formula/> é um valor estático, mas também pode ser uma expressão de fórmula.

    <conditionalFormatting sqref="E3:E9">
        <cfRule type="cellIs" dxfId="0" priority="1" operator="greaterThan">
            <formula>0.5</formula>
        </cfRule>
    <conditionalFormatting>

Apenas as regras com um valor de atributo de tipo de expressão suportam a sintaxe da fórmula.

© ISO/IEC 29500: 2016

Cada formato condicional tem permissão para especificar várias regras de formatação. Pode aplicar a escala de cores e a formatação da barra de dados ao mesmo tempo, por exemplo. Cada formato condicional é representado com um elemento separado <cfRule/> . Para especificar a prioridade de apresentação da interface de utilizador, pode utilizar o priority atributo . Uma vez que um <conditionalFormatting/> elemento pode sobrepor-se a outras áreas formatadas na folha de cálculo, a prioridade é global para todos os formatos condicionais definidos para essa folha de cálculo.

O <cfRule/> elemento tem muitos tipos de formatação, como cellIs e top10, que podem ser aplicados. Cada tipo de formatação utiliza elementos comuns para definir as respetivas definições. Para obter mais informações sobre atributos de regras de formatação condicional, consulte a especificação ISO/IEC 29500.

Classe da Barra de Dados

As seguintes informações da especificação ISO/IEC 29500 introduzem o DataBar elemento (<dataBar/>).

Descreve uma regra de formatação condicional da barra de dados.

Exemplo:

Neste exemplo, é expresso um formato condicional da barra de dados, que se espalha por todos os valores de células no intervalo de células e cuja cor é azul.

    <dataBar>
        <cfvo type="min" val="0"/>
        <cfvo type="max" val="0"/>
        <color rgb="FF638EC6"/>
    </dataBar>

O comprimento da barra de dados de qualquer célula pode ser calculado da seguinte forma:

Comprimento da barra de dados = minLength + (valor da célula - valor mínimo no intervalo) / (valor máximo no intervalo - valor mínimo no intervalo) * (maxLength - minLength),

em que o comprimento mínimo e máximo são uma percentagem fixa da largura da coluna (por predefinição, 10% e 90% respetivamente.)

A diferença mínima no comprimento (ou quantidade de incremento) é de 1 pixel.

© ISO/IEC 29500: 2016

As barras de dados têm uma única cor e apresentam-na como uma barra. O comprimento da barra indica a altura relativa do valor da célula. Uma barra de dados utiliza um modelo separado dentro da regra de formatação condicional para definir as respetivas definições. O <dataBar/> elemento armazena todos os dados relevantes. Uma barra de dados requer três definições: os valores mínimo e máximo para comparar valores de células e uma cor. O primeiro <cfvo/> elemento, ou objeto de valor de formato condicional, define o valor mínimo, o segundo <cfvo/> elemento define o valor máximo. Pode utilizar diferentes formas de especificar um valor, como utilizar uma fórmula ou um valor hard-coded. Outra opção comum é utilizar os tipos "min" e "max". Estes <cfvo/> tipos de elementos especificam os valores mínimos e máximos encontrados no intervalo de células que têm o formato aplicado. Isto fornece um limpo gradação faseada entre os itens mais baixos e mais altos. Além disso, pode especificar a cor da barra de dados com o <color/> elemento .

Classe de Escala de Cores

As seguintes informações da especificação ISO/IEC 29500 introduzem o ColorScale elemento (<colorScale/>).

Descreve uma escala de cores gradadas nesta regra de formatação condicional.

Exemplo:

    <colorScale>
        <cfvo type="min" val="0"/>
        <cfvo type="max" val="0"/>
        <color theme="5"/>
        <color rgb="FFFFEF9C"/>
    </colorScale>

© ISO/IEC 29500: 2016

As escalas de cores fornecem um ecrã que indica o valor relativo entre todos os itens de célula, semelhante a uma barra de dados. Uma escala de cores utiliza um modelo separado dentro da regra de formatação condicional para definir as respetivas definições. Pode especificar até três <cfvo/>, ou objeto de valor de formato condicional, valores de elemento: um para o início da escala, um para o meio da escala e outro para o fim da escala. O valor intermédio é opcional. Além disso, pode especificar a cor da escala de cores com o <color/> elemento .

Classe de Conjunto de Ícones

As seguintes informações da especificação ISO/IEC 29500 introduzem o IconSet elemento (<iconSet/>).

Descreve uma regra de formatação condicional de conjunto de ícones.

Exemplo: este exemplo demonstra o estilo de ícones "3Arrows". O primeiro ícone no conjunto tem de ser apresentado se o valor da célula for inferior ao percentil 33. O segundo ícone no conjunto tem de ser apresentado se o valor da célula for inferior ao percentil 67 e maior ou igual ao percentil 33. O terceiro ícone no conjunto tem de ser apresentado se o valor da célula for maior ou igual ao percentil 67.

    <iconSet iconSet="3Arrows">
        <cfvo type="percentile" val="0"/>
        <cfvo type="percentile" val="33"/>
        <cfvo type="percentile" val="67"/>
    </iconSet>

© ISO/IEC 29500: 2016

Ao utilizar conjuntos de ícones, pode aplicar diferentes conjuntos de ícones às células que contêm os seus dados. O conjunto de ícones utiliza um intervalo de valores para identificar a que conjunto de células aplicar a regra de formatação. O primeiro <cfvo/> elemento identifica o valor mais baixo do intervalo, o segundo <cfvo/>elemento identifica o ponto médio e o terceiro <cfvo/> elemento identifica o valor mais alto. Um conjunto de ícones identifica os ícones a aplicar às células. Pode escolher entre vários ícones hard coded. Para obter mais informações sobre os ícones disponíveis, consulte a especificação ISO/IEC 29500.