Mais

Se / então com VBScript no ArcGIS Field Calculator dando o erro 000539: SyntaxError: sintaxe inválida?

Se / então com VBScript no ArcGIS Field Calculator dando o erro 000539: SyntaxError: sintaxe inválida?


O que há de errado com este VBscript na calculadora de campo?

Coluna C =

if [ColumnB]> 0 then [ColumnC] = [ColumnA] / [ColumnB] ​​endif

Cada vez que recebo esta mensagem de erro de sintaxe:

Erro 000539: SyntaxError: sintaxe inválida (expressão, linha 1) Falha ao executar

Todas as 3 colunas são do tipo de campo duplo, embora variem em precisão e escala. Tentei converter as colunas para o tipo flutuante e fazer a mesma expressão. Recebi as mesmas mensagens de erro.

Para a primeira linha (começando com 'if'), o script é justificado à esquerda. Para a segunda linha (começando com '[Coluna C]), incluí quatro espaços antes do script. No bloco de código da calculadora de campo, a equação se estende até a terceira linha (e é justificada à esquerda) simplesmente porque o nome real que uso para! ColunaB! É mais longo.


Você precisa passar o valor retornado em uma variável, não fazer referência à própria coluna.

Expressão:

resultado

Codeblock:

if [ColumnB]> 0 then result = [ColumnA] / [ColumnB] ​​else result = 0 end if

Veja como as duas partes se encaixam na calculadora de campo - meus dados não têm os mesmos nomes de campo, mas você entendeu.


Assista o vídeo: Create Sequential Numbers in ArcGIS without using = FID!! Bangla - বল