Zkopírujte data pracovních listů aplikace Excel v Pythonu

Při programovém zpracování souborů aplikace Excel může být nutné zkopírovat data z jednoho listu aplikace Excel do druhého. Také může být nutné zkopírovat data z listu v jednom sešitu aplikace Excel do druhého. Abychom se vypořádali s takovými případy, tento článek ukazuje, jak kopírovat data z listů aplikace Excel v Pythonu. Výslovně pokryjeme kopírování dat listů v rámci souboru Excel nebo z jednoho souboru do druhého v Pythonu.

Knihovna Pythonu pro kopírování dat z tabulek aplikace Excel – bezplatné stažení

Ke kopírování dat z listů aplikace Excel použijeme možnosti manipulace s tabulkami Aspose.Cells for Python. Knihovna poskytuje širokou škálu funkcí pro generování a zpracování souborů Excel z vašich aplikací Python. Můžete si buď stáhnout jeho balíček, nebo jej nainstalovat z PyPI pomocí následujícího příkazu.

pip install aspose-cells

Jak kopírovat data z tabulek Excelu v Pythonu

Nejprve se podívejme, jak můžeme kopírovat data z jednoho listu do druhého v souboru aplikace Excel pomocí Aspose.Cells pro Python. Následující jednoduché kroky ukazují, jak tuto operaci provést.

  • Načtěte soubor Excel.
  • Zkopírujte data z listu pomocí jeho názvu.
  • Uložte aktualizovaný soubor aplikace Excel.

Při kopírování dat se v sešitu aplikace Excel vytvoří nový list obsahující tato data. Nyní se podívejme, jak zkopírovat data listů aplikace Excel pomocí kódu Python.

Zkopírujte data z jednoho listu Excelu do druhého v Pythonu

Následují kroky ke kopírování dat z jednoho listu Excelu do druhého v Pythonu.

  • Načtěte soubor Excel pomocí třídy Workbook.
  • Získejte odkaz na kolekci listů v objektu pomocí metody Workbook.getWorksheets().
  • Pomocí metody WorksheetsCollection.addCopy(sheetName) zkopírujte data z listu zadáním jeho názvu.
  • Uložte aktualizovaný soubor Excel pomocí metody Workbook.save(fileName).

Následující ukázka kódu ukazuje, jak kopírovat data z jednoho listu Excelu do druhého v Pythonu.

import jpype
import asposecells

jpype.startJVM()
from asposecells.api import Workbook

# Načíst soubor Excel
workbook = Workbook("workbook.xlsx")

# Získejte odkaz na listy v sešitu
sheets = workbook.getWorksheets()

# Vytvořte kopii požadovaného listu pomocí jeho názvu
sheets.addCopy("Sheet1")

# Uložte aktualizovaný soubor aplikace Excel
workbook.save("copy-sheet-data.xlsx")

Python: Kopírování dat listu Excel z jednoho sešitu do druhého

Nyní se podívejme, jak zkopírovat data listu z jednoho sešitu aplikace Excel do druhého. Následují kroky k provedení této operace.

  • Načtěte cílový soubor Excel pomocí třídy Workbook.
  • Podobně načtěte zdrojový soubor Excel pomocí třídy Workbook.
  • Zkopírujte data ze zdroje do cílového listu pomocí metody Workbook1.getWorksheets().get(index).copy(Workbook2.getWorksheets().get(index)).
  • Uložte cílový soubor Excel pomocí metody Workbook.save(fileName).

Následující ukázka kódu ukazuje, jak zkopírovat data listu z jednoho souboru aplikace Excel do jiného v Pythonu.

import jpype
import asposecells

jpype.startJVM()
from asposecells.api import Workbook

# Načíst cílový soubor Excel
workbook1 = Workbook("destination.xlsx")

# Načtěte zdrojový soubor Excel
workbook2 = Workbook("source.xlsx")

# Přidejte nový list s indexem 0
index = workbook1.getWorksheets().add()

# Můžete také nastavit název nového listu a další vlastnosti

# Zkopírujte první list první knihy do druhé knihy
workbook1.getWorksheets().get(index).copy(workbook2.getWorksheets().get(0))

# Uložte aktualizovaný soubor aplikace Excel
workbook1.save("output.xlsx")

Knihovna Pythonu pro kopírování dat z tabulek Excelu – získejte bezplatnou licenci

Aspose.Cells pro Python můžete používat bez omezení hodnocení získáním bezplatné dočasné licence.

Závěr

V tomto článku jste se naučili kopírovat data z listů Excelu v Pythonu. Explicitně jsme se zabývali tím, jak kopírovat data listu v rámci souboru aplikace Excel nebo z jednoho souboru do druhého. Kromě toho můžete prozkoumat další funkce Aspose.Cells pro Python pomocí dokumentace. V případě, že byste měli nějaké dotazy, neváhejte napsat na naše fórum.

Viz také