Advertisement
Guest User

Untitled

a guest
Jun 5th, 2025
24
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. import pandas as pd
  2. import xlsxwriter
  3. import os
  4.  
  5. # File names
  6. input_excel = "Project Inventory Status 20250429.xlsx"
  7. output_excel = "CCS_Filled_Report.xlsx"
  8. output_pdf = "CCS_Filled_Report.pdf"
  9.  
  10. # Step 1: Read and filter data
  11. df = pd.read_excel(input_excel, sheet_name="Data")
  12.  
  13. df = df.sort_values(by="Room")
  14.  
  15. # Step 2: Create Excel workbook
  16. workbook = xlsxwriter.Workbook(output_excel)
  17. worksheet = workbook.add_worksheet("Inventory Data")
  18.  
  19. # Define formats
  20. header_format = workbook.add_format({
  21. 'bold': True, 'font_name': 'Ebrima', 'font_size': 14,
  22. 'bg_color': '#4B2061', 'font_color': 'white'
  23. })
  24. body_format = workbook.add_format({
  25. 'font_name': 'Futura Book', 'font_size': 10,
  26. 'text_wrap': True
  27. })
  28. worksheet.set_column("A:A", 20)
  29. worksheet.set_column("B:B", 30)
  30. worksheet.set_column("C:C", 80)
  31.  
  32. # Write headers and data
  33. for col_num, header in enumerate(df.columns):
  34. worksheet.write(0, col_num, header, header_format)
  35. for row_num, row in enumerate(df.itertuples(index=False), start=1):
  36. for col_num, value in enumerate(row):
  37. worksheet.write(row_num, col_num, value, body_format)
  38.  
  39. workbook.close()
  40.  
  41. # Step 3: Export to PDF using Excel (Windows only)
  42. try:
  43. import win32com.client
  44. excel = win32com.client.Dispatch("Excel.Application")
  45. wb = excel.Workbooks.Open(os.path.abspath(output_excel))
  46. ws = wb.Worksheets[0]
  47. wb.ExportAsFixedFormat(0, os.path.abspath(output_pdf))
  48. wb.Close(False)
  49. excel.Quit()
  50. print("✅ PDF export complete!")
  51. except Exception as e:
  52. print("❌ PDF export failed:", e)
  53.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement