Created
June 30, 2019 09:30
-
-
Save Y0lan/5bad3d8c795876aff2d2d97b7ac090a8 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import openpyxl | |
| from tkinter import * | |
| from tkinter import filedialog | |
| def write_categories(sheet): | |
| categories = ["Titre", | |
| "Description", | |
| "Catégories", | |
| "Priorité", | |
| "Demandeur", | |
| "Date d'ouverture", | |
| "Date contractuelle de résolution", | |
| "Temps prise en charge", | |
| "Attribué à - technicien" | |
| ] | |
| column = 1 | |
| for categorie in categories: | |
| sheet.cell(column=column, row=1).value = categorie | |
| column = column + 1 | |
| def merge_data(from_sheet, to_sheet): | |
| columns = from_sheet.max_column | |
| rows = from_sheet.max_row | |
| for column in range(2, columns): # skip first column | |
| for row in range(2, rows): # skip first row | |
| if column == 2: | |
| to_sheet.cell(column=1, row=row).value = from_sheet.cell(column=column, row=row).value | |
| if column == 10: | |
| to_sheet.cell(column=2, row=row).value = from_sheet.cell(column=column, row=row).value | |
| if column == 9: | |
| to_sheet.cell(column=3, row=row).value = from_sheet.cell(column=column, row=row).value | |
| if column == 6: | |
| to_sheet.cell(column=4, row=row).value = from_sheet.cell(column=column, row=row).value | |
| if column == 7: | |
| to_sheet.cell(column=5, row=row).value = from_sheet.cell(column=column, row=row).value | |
| if column == 5: | |
| to_sheet.cell(column=6, row=row).value = from_sheet.cell(column=column, row=row).value | |
| if column == 15: | |
| to_sheet.cell(column=7, row=row).value = from_sheet.cell(column=column, row=row).value | |
| if column == 13: | |
| to_sheet.cell(column=8, row=row).value = from_sheet.cell(column=column, row=row).value | |
| if column == 8: | |
| to_sheet.cell(column=9, row=row).value = from_sheet.cell(column=column, row=row).value | |
| def main(): | |
| # fichiers à ouvrir | |
| root = Tk() | |
| files = filedialog.askopenfilenames(parent=root, title='Choose files') | |
| files = list(files) | |
| # ouvrir fichier excel | |
| for f in files: | |
| from_workbook = openpyxl.load_workbook(f) | |
| to_workbook = openpyxl.Workbook() | |
| # récupérer la bonne feuille | |
| from_sheet = from_workbook.active | |
| to_sheet = to_workbook.active | |
| write_categories(to_sheet) | |
| merge_data(from_sheet, to_sheet) | |
| to_workbook.save(f.split(".")[0] + "-automatic.xlsx") | |
| if __name__ == "__main__": | |
| main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment