Skip to content

method newstyle

Saulo Martins edited this page Mar 21, 2021 · 2 revisions

NewStyle

:NewStyle(oStyleClone)
Cria objeto de estilo para aplicar em formatação de célula


Parâmetros

Parâmetro Tipo Descrição Obrigatório Obs
oStyleClone Object YExcel_Style Se esse parâmetro for passado cria um novo estilo baseado no estilo informado   Toda formatação não definida no novo estilo será buscada se tem no estilo pai

Métodos disponível

Nome do método Descrição Classe para criação
SetnumFmt(numFmtId) Informa o formato da célula no estilo oExcel:AddFmtNum() e oExcel:AddFmt()
Setfont(fontId) Informa a fonte do estilo oExcel:AddFont()
Setfill(fillId) Informa o fundo do estilo oExcel:CorPreenc() oExcel:EfeitoPreenc()
Setborder(borderId) Informa as bordas do estilo oExcel:Borda()
SetaValores(aValores) Informa outros valores oExcel:Alinhamento()
GetnumFmt() Retorna id do formato da célula  
Getfont() Retorna id da fonte  
Getfill() Retorna id do fundo  
Getborder() Retorna id da borda  
GetaValores() Retorna array com valores de alinhamento  

Exemplo

Local oExcel 		:= YExcel():new()
Local nPosCor		:= oExcel:CorPreenc("FF0000FF")                //Cor de Fundo Azul
Local nPosCorL		:= oExcel:CorPreenc("FFDCE6F1")                //Cor de Fundo Azul linhas
Local nPosFont		:= oExcel:AddFont(12,"FFFFFFFF","Calibri","2") //Fonte Branca
Local nPosFont2		:= oExcel:AddFont(12,"FF000000","Calibri","2") //Fonte Preto
Local oAlinhamento	:= oExcel:Alinhamento("center","center")       //Alinhamento center
Local nPosBordTB	:= oExcel:Borda("TB","FFFF0000","thick")       //Borda top/bottom
Local nPosBordL		:= oExcel:Borda("LTB","FFFF0000","thick")      //Borda top/bottom/left
Local nPosBordR		:= oExcel:Borda("RTB","FFFF0000","thick")      //Borda top/bottom/right
Local oPosCab,oPosCabL,oPosCabR
Local oPosStyle,oPosMoeda,oPosNum

//Primeiro estilo com Fundo Azul, Fonte Branca, Alinhamento center e Bordas top/bottom
oPosCab  := oExcel:NewStyle():Setfont(nPosFont):Setfill(nPosCor):Setborder(nPosBordTB):SetaValores({oAlinhamento})
//Segundo estilo herda tudo do primeiro e altera a Bordas top/bottom/left
oPosCabL := oExcel:NewStyle(oPosCab):Setborder(nPosBordL)
//Teceiro estilo herda tudo do primeiro e altera a Bordas top/bottom/right
oPosCabR := oExcel:NewStyle(oPosCab):Setborder(nPosBordR)

//Estilo para linhas
oPosStyle := oExcel:NewStyle():Setfont(nPosFont2):Setfill(nPosCorL)
oPosMoeda := oExcel:NewStyle(oPosStyle):SetnumFmt(44)  //Estilo para linha moeda
oPosNum   := oExcel:NewStyle(oPosStyle):SetnumFmt(oExcel:AddFmtNum(2,.T.))  //Estilo para numero com duas casas decimais e separação de milhar

oExcel:ADDPlan()
oExcel:AddTamCol(1,5,15)	//Tamanho 15 para colunas
oExcel:Pos(1,1):SetValue("Linha"):SetStyle(oPosCabL)
oExcel:Pos(1,2):SetValue("Filial"):SetStyle(oPosCab)
oExcel:Pos(1,3):SetValue("Venda"):SetStyle(oPosCab)
oExcel:Pos(1,4):SetValue("Quantidade"):SetStyle(oPosCab)
oExcel:Pos(1,5):SetValue("Data Venda"):SetStyle(oPosCabR)

oExcel:Pos(2,1):SetValue(1)
oExcel:Pos(2,2):SetValue("Filial 1")
oExcel:Pos(2,3):SetValue(1000)
oExcel:Pos(2,4):SetValue(50)
oExcel:Pos(2,5):SetValue(date())

oExcel:Pos(3,1):SetValue(2)
oExcel:Pos(3,2):SetValue("Filial 2")
oExcel:Pos(3,3):SetValue(3000)
oExcel:Pos(3,4):SetValue(30)
oExcel:Pos(3,5):SetValue(date())

oExcel:SetStyle(oPosStyle,2,1,3,5)	//Altera estilos da linha 2 coluna 1 até linha 3 coluna 5
oExcel:SetStyle(oPosMoeda,2,4,3,4)	//Altera estilos da coluna 4 nas linhas 2 e 3
oExcel:SetStyle(oPosNum,2,3,3,3)	//Altera estilos da coluna 3 nas linhas 2 e 3

oExcel:Save()    //Salvar
oExcel:OpenApp() //Abrir Excel
oExcel:Close()   //Fechar e limpar objeto

Imagem

image

  • Olá Mundo
  • Exemplo Ler xlsx
  • Métodos
  • Métodos Posicionamento e referência
  • Métodos Estilos
  • 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
    • Exemplo 2 - com formato tabela do Excel
    • 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 formatação de linhas

Clone this wiki locally