Excel 转表 (转换)

描述

将 Microsoft Excel 文件转换为表。

使用方法

  • Excel 转表支持 Excel 工作簿 (.xlsx) 和 Microsoft Excel 5.0/95 工作簿 (.xls) 格式作为输入。

  • 此工具假设表数据按纵向排序。第一行用作输出表的字段名称。在验证过程中,可能会对这些字段名称重命名,以免出现任何错误或重复名称。数据间的空列将得到保留,并为其指定通用字段名(例如 field_4)。

  • 输出字段数据类型基于输入列范围内找到的值和像元格式。输出字段数据类型包括浮点型、文本和日期。如果输入列包含多个数据类型或格式类型,则输出字段的类型为文本。

语法

ExcelToTable(Input_Excel_File, Output_Table, {Sheet})
参数说明数据类型
Input_Excel_File

要转换的 Microsoft Excel 文件。

File
Output_Table

输出表。

Table
Sheet
(可选)

要导入的 Excel 文件中特定工作表的名称。如果未指定,则使用工作簿中的第一个工作表。

String

代码示例

Excel 转表 (ExcelToTable) 示例(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 Excel 转表 (ExcelToTable) 函数。

import arcpy
arcpy.env.workspace = "c:/data"
arcpy.ExcelToTable_conversion("data.xls", "outgdb.gdb", "Sheet1")
Excel 转表 (ExcelToTable) 示例 2(独立脚本)

将 Microsoft Excel 文件的各个工作表导入地理数据库的各个表中。

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')

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题