5 votos

el uso de mod() SI, a CONTINUACIÓN, el cálculo de campos

Estoy tratando de usar la calculadora de campo para asignar un "extraño" o "incluso" valor a un campo de enteros pequeños. Yo suelo hacer esto seleccionando donde:

MOD([field],2) = 0

y, a continuación, sólo calcular como "incluso", y luego invertir la selección y el establecimiento de "extraño"

Tenía la esperanza de hacer algo como esto en el campo de la calculadora:

DIM oddeven
IF mod([Field],2) = 0
   oddeven = "even"
else
   oddeven = "odd"
end IF

Esto no funciona y supongo que hay un uso alternativo de la mod() en esta configuración, o tal vez usted no puede utilizar un operador de la SI/ENTONCES la condición de declaración.

5voto

sker Puntos 2670

Su lógica es correcta, pero la sintaxis es un poco off. En VBA el operador mod es [Field] Mod 2 y se debe utilizar la Then cláusula al final de la IF declaración. Así que su código corregido:

DIM oddeven
IF [TILESQMILE] mod 2 = 0 Then
oddeven = "even"
else
oddeven = "odd"
end IF

Y usted debe introducir el código en el campo de la calculadora de la ventana de la siguiente manera:

enter image description here

5voto

Amy Puntos 46

Si usted está interesado en una implementación de Python, asegúrese de que establece la intérprete de "Python" y escriba la siguiente función en el Codeblock área. Entonces, todo lo que tienes que hacer es llamar a la función oddeven con el nombre de campo rodeada por el "!".

def oddeven(n):
  if n%2 ==0:
    return "even"
  else:
    return "odd"

enter image description here

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X