Pergunte aqui
1

Como negar o operador Like no LibreOffice Basic

perguntadas 2019-02-19 14:02:08 +0200

imagem do gravatar de crisdoxavier

updated 2019-03-01 17:59:23 +0200

Bom dia, pessoal. Estou tentando criar um código que verifique se uma célula tem fórmula no VBA e para isso estou usando o operador Like. Primeiro, faço o seguinte:

Dim Plan Ativa 'Defino a Planilha onde está sendo executado o código
Dim Range 'Defino o intervalo de células
Dim Formula ' Defino a matriz onde serão colocadas as fórmulas de Range

PlanAtiva = ThisComponent.CurrentController.getActiveSheet
Range = PlanAtiva.getCellRangeByPosition(0, 1, 10, 3)
Formula = Range.getFormulaArray

Formula, então, vira uma matriz dentro de uma matriz, sendo a matriz extrena correspondente às linhas e a matriz interna correspondente às colunas. Chega então o momento em que tenho que verificar se há fórmula ou não. Eu quero que verifique se não há fórmula. Eu fiz desse jeito:

If Not Formula(0)(0) Like "=*" Then

O que gera um erro " Tipos de dados incompatíveis". Se eu fizer sem o Not, roda sem problemas, mas eu queria justamente o contrário.

editar alterar tag assinalar como ofensivo fechar mesclar Excluir

1 Resposta

1

respondidas 2019-02-21 00:43:59 +0200

imagem do gravatar de Grafeno

Boa noite,

Eu testei com parênteses, como abaixo, e funcionou:

If Not ( Formula(0)(0) Like "=*" ) Then

Atte,

editar assinalar como ofensivo Excluir Link mais

Comentários

Acabei de testar também. Deu certo. Muito Obirgado.

imagem do gravatar de crisdoxaviercrisdoxavier ( 2019-02-25 14:10:28 +0200 )editar
1

Funciona com os parênteses pois, se não os colocar, nega-se o termo Formula, que é uma String e não uma expressão condicional. Com os parênteses, nega-se uma condição, ou seja, se: (Formula(0)(0) Like "=")->verdadeiro, então not(Formula(0)(0) Like "=")->falso.

imagem do gravatar de LeviLevi ( 2019-04-26 06:26:23 +0200 )editar
Login/Registrar para responder

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2019-02-19 14:02:08 +0200

Lidas: 37 vezes

Última atualização: Feb 21