Continuação - Delphi e OpenOffice(BROffice) - Parte 5
CÉLULAS – Usando Funções ou definindo fórmulas
I – INTRODUÇÃO
Em nosso último artigo, vimos como configurar uma célula em suas diversas propriedades, tais como: visibilidade, formato, mesclagem, largura e altura. Vimos também a parte do cabeçalho e rodapé da nossa planilha. Agora, vamos partir para a questão de como trabalhar com fórmulas e funções.
As chamadas para o aplicativo já são de seu conhecimento e entendo que não há mais necessidade de enfocar, portanto, se você não acompanhou as explicações anteriores, recomendo que volte um ou dois tutoriais para poder prosseguir nessa 5ª parte.
II – ATRIBUINDO FUNÇÕES OU FÓRMULAS
Até nosso último tutorial não tratamos de como fazer o processo mais importante: executar operações de cálculo no CALC. Formatar é somente um recurso visual que ajuda na visualização dos dados prontos para nossos usuários. A parte do cálculo é muito simples. Vejamos no código abaixo:
procedure TForm1.btExecutarClick(Sender: TObject);
begin
AtribuirVariaveis;
Planilha.getCellByPosition(0,0).Value := StrToFloat(A1.Text); //A1
Planilha.getCellByPosition(0,1).Value := StrToFloat(A2.Text); //A2
Planilha.getCellByPosition(0,2).Value := StrToFloat(A3.Text); //A3
Planilha.getCellByPosition(0,3).Formula := F1.Text;
end;
A diferença básica apresentadas nos tutoriais anteriores é que agora estamos dizendo que trabalhamos com valores através da atribuição Planilha.getCellByPosition(0,0).
Value. Para que um cálculo seja executado é definido ao invés de
value o atributo Formula. Não confunda com uma função. O BROffice possui uma lista das funções mais utilizadas, não as confunda com as fórmulas que você cria. Nesse segundo momento, vamos verificar como usar as funções. Um detalhe importante eu devo deixar claro, se você tentar aplicar as funções usando o nome em português, algo como: SOMA(X:Y), MULT(X:Y) e assim por diante, provavelmente obterá um erro pelo nome da função. Esses nomes devem ser passados em Inglês. Para ter acesso a todas as funções, acesse o site:
http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Calc:_Functions_listed_by_category
procedure TForm1.buExecFuncaoClick(Sender: TObject);
begin
AtribuirVariaveis;
Planilha.getCellByPosition(0,0).Value := StrToFloat(A4.Text); //A1
Planilha.getCellByPosition(0,1).Value := StrToFloat(A5.Text); //A2
Planilha.getCellByPosition(0,2).Value := StrToFloat(A6.Text); //A3
Case cbFuncao.ItemIndex of
0 : Planilha.getCellByPosition(0,3).Formula := '=SUM(A1:A3)'; //soma
1 : Planilha.getCellByPosition(0,3).Formula := '=AVERAGE(A1:A3)'; //média
2 : Planilha.getCellByPosition(0,3).Formula := '=MAX(A1:A3)'; //máximo
3 : Planilha.getCellByPosition(0,3).Formula := '=MIN(A1:A3)'; //mínimo
4 : Planilha.getCellByPosition(0,3).Formula := '=PRODUCT(A1:A3)'; //multiplica
end;
end;
III – PROPRIEDADES DO DOCUMENTO
Aproveitando o “gancho” para não ficar muito em cima de uma coisa só, vamos aproveitar para adicionar propriedades do autor ao documento. As propriedades podem ser acessadas no menu Arquivo do BrOffice e no submenu > Propriedades. Para atribuí-las ao seu documento, devemos usar a variável Documento e não a Planilha. Você pode definir outras poucas propriedades do documento, porém as que estou passando abaixo, são as mais comuns. Em nosso tutorial, acrescentei mais uma procedure chamada Propriedades e que está definida na seguinte forma:
procedure TForm1.Propriedades;
begin
if chProp.Checked then
begin
Documento.DocumentInfo.Author := edAut.Text; //Autor do documento
Documento.DocumentInfo.Title := edTit.Text; //Título do documento
Documento.DocumentInfo.Subject := edAss.Text; //Assunto do documento
Documento.DocumentInfo.Keywords := edKeyW.Text; //Palavras-Chave do documento
Documento.DocumentInfo.Description := mmDesc.Text; //Descrição do conteúdo
end;
end;
E aqui na sequência, a forma como fica quando executamos o nosso aplicativo contendo as descrições preenchidas, veja:
Essa é mais uma parte de nosso tutorial. Espero agora que mesmo sendo pouca conteúdo apresentado, eles tenham sido de grande valia para implementar em suas aplicações.
Se desejar baixar o código fonte:
Delphi e BrOffice - Parte 5.zip
Abraços e até o próximo módulo.