-
Notifications
You must be signed in to change notification settings - Fork 27
method NewStyRules
Saulo Martins edited this page Jul 4, 2026
·
1 revision
:NewStyRules()
Cria um conjunto de regras de estilo e formatação. As regras são blocos de código avaliados para cada célula no momento do SetStyle, permitindo formatação dinâmica (ex: zebrar linhas, formatar colunas específicas).
Não possui parâmetros
Objeto - instância de custom.excel.StyleRules para adicionar as regras
| Método | Descrição |
|---|---|
| AddStyle(bRule,xStyle) | Cria regra para definir o estilo completo (NewStyle) |
| AddnumFmt(bRule,nFmtNum) | Cria regra para definir o formato de número |
| AddFont(bRule,fontId) | Cria regra para definir a fonte (AddFont) |
| Addfill(bRule,fillId) | Cria regra para definir o preenchimento de fundo (CorPreenc) |
| Addborder(bRule,nborderId) | Cria regra para definir a borda (Borda) |
| AddValores(bRule,aValores) | Cria regra para alinhamentos (Alinhamento) |
O bloco de código bRule recebe {|nLinha,nColuna,oExcel| ... } e deve retornar lógico. Quando retorna .T., a regra é aplicada à célula.
Local nCont
Local oExcel := custom.excel.Xlsx():New(cNomeFile="TstYExcel",cTipo="A")
Local nPosCorI := oExcel:CorPreenc("FFB8CCE4") //Azul ímpar
Local nPosCorP := oExcel:CorPreenc("FFDCE6F1") //Azul par
Local nBordaAll := oExcel:Borda("ALL")
Local nFmtNum3 := oExcel:AddFmtNum(nDecimal=3,lMilhar=.T.)
Local nPosFont4 := oExcel:AddFont(nTamanho=11,xCorRGB="FFFF0000",cNome="Calibri",cfamily="2")
Local oEstilo1 := oExcel:NewStyle():Setborder(nBordaAll)
Local oRegEst1 := oExcel:NewStyRules()
//Linhas ímpares com fundo azul claro, pares com fundo azul mais claro (herdam a borda de oEstilo1)
oRegEst1:AddStyle(bRule={|nLin,nCol,oObjExcel| nLin % 2 == 1 }, xStyle=oExcel:NewStyle(oEstilo1):Setfill(nPosCorI))
oRegEst1:AddStyle(bRule={|nLin,nCol,oObjExcel| nLin % 2 == 0 }, xStyle=oExcel:NewStyle(oEstilo1):Setfill(nPosCorP))
oRegEst1:AddnumFmt(bRule={|nLin,nCol,oObjExcel| nCol==3 }, nFmtNum=44) //Coluna 3 com formato moeda
oRegEst1:AddnumFmt(bRule={|nLin,nCol,oObjExcel| nCol==4 }, nFmtNum=nFmtNum3) //Coluna 4 com 3 casas decimais
oRegEst1:AddFont(bRule={|nLin,nCol,oObjExcel| nCol==4 }, fontId=nPosFont4) //Coluna 4 com fonte vermelha
oExcel:ADDPlan()
For nCont:=1 to 20
oExcel:Pos(nCont,1):SetValue(nCont):SetStyle(oRegEst1)
oExcel:Pos(nCont,3):SetValue(nCont*10):SetStyle(oRegEst1)
oExcel:Pos(nCont,4):SetValue(nCont/3):SetStyle(oRegEst1)
Next
oExcel:Save(GetTempPath())
oExcel:OpenApp()
oExcel:Close()O conjunto de regras é passado ao SetStyle no lugar de um estilo comum. Também pode ser usado no parâmetro de regras de estilo do Alias2Tab.
- Olá Mundo
- Exemplo Ler xlsx
- Métodos Principais
- New - Construtor da classe
- Open - Abrir planilha (senha opcional)
- GetError - Obter erro da última abertura
- AddPlan - Adicionar planilha
- SetValue - Definir valor da célula
- GetValue - Obter valor da célula
- Save - Salvar planilha
- SetPassword - Proteger com senha de abertura
- OpenApp / Close - Abrir no Excel / Fechar objeto
- SetsheetProtection - Proteger planilha contra edição
- Métodos Posicionamento e referência
- Métodos Células e Conteúdo
- Métodos Estilos
- NewStyle
- NewStyRules
- CorPreenc
- EfeitoPreenc
- AddFont
- Alinhamento
- Borda
- AddFmt
- AddFmtNum
- FormatCond / FormatCondDup / FormatCondTempo
- DataBar - Barra de dados
- IconSet - Conjunto de ícones
- Cellprotection
- Métodos Dimensões e Agrupamento
- Métodos Impressão
- Métodos Imagens
- Gráficos (Charts)
- Visão Geral — Tipos suportados
- Exemplo Completo
- NewChart - Criar gráfico pelo atalho
- Métodos comuns (todos os tipos)
- AddSerie - Adicionar série de dados
- SetTitulo / SetLegenda / SetGrade - Título, legenda e grade
- Set3D - Visualização 3D
- Insert - Inserir na planilha
- Tipos de gráfico
- ChartBar - Colunas e barras
- ChartLine - Linhas
- ChartPie - Pizza
- ChartScatter - Dispersão XY
- ChartArea / ChartStock / ChartRadar - Área, Ações e Radar
- ChartDoughnut / ChartOfPie - Rosca e Pizza de Pizza
- ChartBubble / ChartSurface - Bolhas e Superfície
- ChartCombo - Combinação de gráficos
- Tabela formatada
- Preenchimento em massa (bulk)
- Exemplo 1 - Básico
- BulkNewField - Definição de novas colunas do bulk
- DefBulkLine - Criar definição de campos para preenchimento em massa
- SetValueBulk - Definir valor para preenchimento de bulk
- SetBulkLine - Preenche a linha em bulk do Excel
- FlushBulk - Atualiza dados do Excel
- Preenchimento Excel com Query/Alias
- Exemplo 1 - Básico
- Alias2Tab - Preenche o Excel baseado no alias
- NewFldTab - Altera definição de campos ou cria novo campo
- DefSubTotal - Cria subtotal e agrupamento de subtotal
- NewRuleLine - Regra de formação de linhas