Numerar automáticamente un campo de una tabla en un shp

+3 votos
15,184 vistas
preguntado por clarita Novato (108 puntos)   May 25, 2013 en ArcGIS
editado por franzpc May 25, 2013


En ArcGIS en la tabla de un shape yo creo un campo y quiero en ese campo ingresar números 1,2,3 hasta el 100 son demasiado para escribir en cada polígono su número, como hago para que automáticamente salga.

2 Respuestas

+7 votos
respondido por franzpc Administrador (7,031 puntos)   May 25, 2013

Primero crea un nuevo campo tipo Double/Short Integer, clic derecho sobre el campo seleccionar Field Calculator, selecciona Python, activa Show Codeblock, ahora en Pre-Logic Script Code y el siguiente cuadro copias los siguientes códigos respectivamente:

rec=0 
def autoIncrement(): 
 global rec 
 pStart = 1  
 pInterval = 1 
 if (rec == 0):  
  rec = pStart  
 else:  
  rec += pInterval  
 return rec
autoIncrement()

Los valores de las líneas pStart y pInterval, se pueden modificar arbitrariamente.

Field Calculator Python Rec

comentado por clarita Novato (108 puntos)   May 26, 2013
gracias lo voy a intentar
comentado por ramirez_maps Novato (134 puntos)   Nov 5, 2013
Gracias, de gran utilidad
comentado por miguelmartineez Novato (100 puntos)   Oct 6, 2016
Hola, quisiera saber como se realiza este mismo procedimiento pero que siempre tenga 3 digitos en el campo. por ejemplo: 001, 002, 003, 004, como seria la codificación
+1 voto
respondido por labpiceda Novato (125 puntos)   Dic 3, 2013
Hola, Necesitaría saber como se procede en arcgis 9.3 dado que este tutorial, tengo entendido es para el 10
comentado por joroci Novato (100 puntos)   Feb 9, 2015
Gracias. Es muy útil
comentado por franzpc Administrador (7,031 puntos)   May 6, 2015
Puedes usar el script rec_number.cal de Easy Calculate.

'=========================
'rec_Number.cal
'Author: Ianko Tchoukanski
'http://www.ian-ko.com
'=========================
Static rec As Long
Static i As Long
Dim lStart As Long
Dim lInterval As Long
'=================
'adjust start value and interval below
lStart =  1
lInterval = 1
'=================
If (i = 0) Then
  rec = lStart
Else
  rec = rec + lInterval
End If
i = i + 1

__esri_field_calculator_splitter__
rec

Un buen usuario

  1. Comparte lo que sabe
  2. Demuestra su amabilidad
  3. Hace preguntas claras
  4. Escribe correctamente
  5. No hace daño a nadie

992 preguntas

1,238 respuestas

807 comentarios

1,970 usuarios

 

Gana 500 puntos y obtén un Certificado SIG validado por ArcGeek.

 

...