De Excel a tabla (Conversión)

Resumen

Convierte archivos de Microsoft Excel en una tabla.

Uso

  • De Excel a tabla admite como entrada los formatos de libros de Excel (.xlsx) y libros de Microsoft Excel 5.0/95 (.xls).

  • Esta herramienta asume que los datos tabulares están ordenados verticalmente. La primera fila se utiliza como los nombres de campo de la tabla de salida. Estos nombres de campo se pueden cambiar durante el proceso de validación para evitar errores o nombres duplicados. Las columnas vacías entre los datos se conservan y se les asigna un nombre de campo genérico (field_4, por ejemplo).

  • El tipo de datos del campo de salida se basa en los valores y en el formato de las celdas de la columna de entrada. Los tipos de datos del campo de salida incluyen los siguientes: flotante, texto y fecha. Si una columna de entrada contiene más de un tipo de datos o de formato, el tipo del campo de salida será de texto.

Sintaxis

ExcelToTable(Input_Excel_File, Output_Table, {Sheet})
ParámetroExplicaciónTipo de datos
Input_Excel_File

Archivo de Microsoft Excel para convertir.

File
Output_Table

La tabla de salida.

Table
Sheet
(Opcional)

Nombre de la hoja concreta dentro del archivo Excel que se va a importar. Si no se especifica, se utilizará la primera hoja del libro.

String

Muestra de código

Ejemplo de ExcelToTable (ventana de Python)

La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la función ExcelToTable en el modo inmediato.

import arcpy
arcpy.env.workspace = "c:/data"
arcpy.ExcelToTable_conversion("data.xls", "outgdb.gdb", "Sheet1")
Ejemplo 2 de ExcelToTable (secuencia de comandos independiente)

Importa cada hoja de un archivo de Microsoft Excel en tablas individuales en una geodatabase.

import os
import xlrd
import arcpy
def importallsheets(in_excel, out_gdb):
    workbook = xlrd.open_workbook(in_excel)
    sheets = [sheet.name for sheet in workbook.sheets()]
    print('{} sheets found: {}'.format(len(sheets), ','.join(sheets)))
    for sheet in sheets:
        # The out_table is based on the input excel file name
        # a underscore (_) separator followed by the sheet name
        out_table = os.path.join(
            out_gdb,
            arcpy.ValidateTableName(
                "{0}_{1}".format(os.path.basename(in_excel), sheet),
                out_gdb))
        print('Converting {} to {}'.format(sheet, out_table))
        # Perform the conversion
        arcpy.ExcelToTable_conversion(in_excel, out_table, sheet)
if __name__ == '__main__':
    importallsheets('c:/data/data.xls',
                    'c:/data/outgdb.gdb')

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados