You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

tabelle_umstrukturieren.py 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import openpyxl
  2. def kopiere_header(input_sheet, output_sheet):
  3. # Kopiere den Header manuell in das Ausgabe-Arbeitsblatt
  4. for row in input_sheet.iter_rows(min_row=1, max_row=1, values_only=True):
  5. output_sheet.append(row)
  6. def sortiere_excel_tabelle(input_file_path, output_file_path, ):
  7. # Öffne die Eingabe-Excel-Datei
  8. input_workbook = openpyxl.load_workbook(input_file_path)
  9. input_sheet = input_workbook['Sheet1']
  10. # Erstelle eine neue Excel-Tabelle für die sortierten Zeilen
  11. output_workbook = openpyxl.Workbook()
  12. output_sheet = output_workbook.active
  13. # Kopiere den Header ins Ausgabe-Arbeitsblatt
  14. kopiere_header(input_sheet, output_sheet)
  15. # Lese die Daten-Zeilen aus der Tabelle
  16. data_rows = list(input_sheet.iter_rows(min_row=2, values_only=True))
  17. # Sortiere die Daten-Zeilen nach dem Wert der angegebenen Spalte
  18. sorted_data_rows = sorted(data_rows, key=lambda x: x[18 - 1]) # -1, da Listenindizes bei 0 beginnen
  19. # Schreibe die sortierten Daten-Zeilen in die neue Tabelle
  20. for row in sorted_data_rows:
  21. output_sheet.append(row)
  22. # Speichere die Änderungen in der neuen Excel-Datei
  23. output_workbook.save(output_file_path)
  24. # Schließe die Excel-Dateien
  25. input_workbook.close()
  26. output_workbook.close()
  27. # Beispielaufruf
  28. input_file_path = 'Testcase_excel_dataset.xlsx'
  29. output_file_path = 'Testcases_nach_Genauigkeit.xlsx'
  30. sortiere_excel_tabelle(input_file_path, output_file_path)