Résumé
Convertit des fichiers Microsoft Excel en table.
Utilisation
Excel vers table prend en charge les formats Classeurs Excel (.xlsx) et Classeur Microsoft Excel 5.0/95(.xls) en entrée.
Cet outil part du principe que les données tabulaires sont triées verticalement. La première ligne est utilisée pour les noms des champs de la table en sortie. Ces noms de champs peuvent être renommés lors du processus de validation pour éviter les erreurs ou noms dupliqués. Les colonnes vides entre les données sont conservées et un nom de champ générique leur est attribué (par exemple champ_4).
Le type de données de champ en sortie repose sur les valeurs et le format de cellule qui se trouvent au sein de la colonne en entrée. Les types de données de champ en sortie sont notamment flottants, de texte et de date. Si une colonne en entrée contient plusieurs types de données ou formats, le champ en sortie est de type texte.
Syntaxe
arcpy.conversion.ExcelToTable(Input_Excel_File, Output_Table, {Sheet})
Paramètre | Explication | Type de données |
Input_Excel_File | Fichier Microsoft Excel à convertir. | File |
Output_Table | Table en sortie. | Table |
Sheet (Facultatif) | Le nom de la feuille en particulier au sein du fichier Excel à importer. Si le nom n'est pas précisé, la première feuille du classeur est utilisée. | String |
Exemple de code
Exemple d'utilisation de l'outil ExcelToTable (fenêtre Python)
Le script de fenêtre Python suivant montre comment utiliser la fonction ExcelToTable en mode immédiat.
import arcpy
arcpy.env.workspace = "c:/data"
arcpy.ExcelToTable_conversion("data.xls", "outgdb.gdb", "Sheet1")
2e exemple d'utilisation de l'outil ExcelToTable (script autonome)
Importez chaque feuille d'un fichier Microsoft Excel dans des tables individuelles d'une géodatabase.
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')
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui