Python Forum
Complete NEWB and openpyxl project
Thread Rating:
  • 6 Vote(s) - 3.5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Complete NEWB and openpyxl project
#28
Thank you for that explanation... I ended up needing to know that! :)

I've gotten stuck again. I'm managed to create spreadsheets named as a concatenation of the original file and the group. I've managed to take the "subgroup" (everything before the final digit in the reorder field) and create sheets named for them in each workbook. At least a small sense of accomplishment! I was able to reuse your code to figure out how to get where I am.

Now I can't seem to figure out how to append the header and then the rows of group data to the the sheets. Here's what I've got, but I get an output message that says:

Output:
RESTART: C:\Users\Joe\Dropbox\Python\Misc py files\group-sort examples from buran.py OPTION 1 output Traceback (most recent call last): File "C:\Users\Joe\Dropbox\Python\Misc py files\group-sort examples from buran.py", line 47, in <module> ws.cell(row=1, column=1).value = header File "C:\Python3x\lib\site-packages\openpyxl\cell\cell.py", line 294, in value self._bind_value(value) File "C:\Python3x\lib\site-packages\openpyxl\cell\cell.py", line 207, in _bind_value raise ValueError("Cannot convert {0!r} to Excel".format(value)) ValueError: Cannot convert ('Cust#', 'First Name', 'Last Name', 'Full Name', 'Reorder') to Excel
From this code:

import os, glob, shutil, openpyxl
from collections import defaultdict
from openpyxl.reader.excel import load_workbook
from openpyxl import Workbook
from openpyxl.compat import range
from openpyxl.utils import get_column_letter

os.chdir("c://test")
 
mainfile = 'Example.xlsx'
wb = load_workbook(mainfile)
ws = wb.active
 
# read header and all data in two variables -> header and data
# Note the asteriks in frot of data
# This way data will hold everything except the first element in ws.values
 
header, *data = ws.values
 
 
 
# OPTION 1
print('\n\nOPTION 1 output')
# parse data into groups
groups = defaultdict(list)
 
for row in data:
    group = row[-1][-1]
    groups[group].append(row)
 
###print each group in desired order
##for group, rows in sorted(groups.items()):
##    print('\n\nGroup {}\n---------------\n'.format(group))
##    for row in sorted(rows, key=lambda x: x[-1]):
##        print(row)


for group, rows in sorted(groups.items()):
    wb = Workbook()
    wb.remove(wb.active)
    dest_filename = (mainfile[:-5] + " Group " + group + ".xlsx")
    for row in sorted(rows, key=lambda x: x[-1][:-1]):
        subgroup = row[-1][:-1]
        wb.create_sheet(title = subgroup)
        ws.cell(row=1, column=1).value = header
       
    wb.save(filename = dest_filename)
Thoughts?
Reply


Messages In This Thread
Complete NEWB and openpyxl project - by Netopia - Jan-09-2019, 08:06 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-09-2019, 08:44 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-09-2019, 09:43 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-09-2019, 09:46 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-09-2019, 09:53 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-09-2019, 10:11 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-09-2019, 10:14 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-10-2019, 06:26 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-10-2019, 07:37 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-10-2019, 08:03 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-10-2019, 08:30 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-10-2019, 08:36 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-10-2019, 08:39 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-11-2019, 01:19 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-11-2019, 01:44 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-11-2019, 01:48 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-11-2019, 01:54 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-11-2019, 01:57 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-11-2019, 02:47 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-11-2019, 02:54 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-11-2019, 03:00 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-14-2019, 07:20 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-14-2019, 07:44 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-14-2019, 08:24 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-14-2019, 08:27 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-15-2019, 12:22 AM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-15-2019, 02:56 AM
RE: Complete NEWB and openpyxl project - by buran - Jan-15-2019, 10:05 AM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-15-2019, 02:14 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-15-2019, 02:21 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-16-2019, 04:36 AM
RE: Complete NEWB and openpyxl project - by buran - Jan-16-2019, 07:04 AM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-16-2019, 03:29 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-16-2019, 05:19 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-17-2019, 04:59 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-17-2019, 05:08 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-17-2019, 05:33 PM
RE: Complete NEWB and openpyxl project - by buran - Jan-17-2019, 06:04 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-17-2019, 10:19 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-18-2019, 03:31 AM
RE: Complete NEWB and openpyxl project - by buran - Jan-18-2019, 07:07 AM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-18-2019, 02:15 PM
RE: Complete NEWB and openpyxl project - by Netopia - Jan-18-2019, 08:15 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Python newb need help Fictile 1 346 Apr-02-2024, 03:28 AM
Last Post: buran
  NameError issue with daughter's newb code MrGonk 2 1,539 Sep-16-2021, 01:29 PM
Last Post: BashBedlam
  Simple newb string question Involute 2 2,316 Sep-08-2019, 12:50 AM
Last Post: Involute
  please help this newb install pygame iofhua 7 6,170 May-15-2019, 01:09 PM
Last Post: buran
  Newb question: Debugging + Linting Python in Visual Studio Code Drone4four 1 2,511 Apr-15-2019, 06:19 AM
Last Post: perfringo
  Newb question about %02d %04d bennylava 30 20,173 Mar-05-2019, 11:23 PM
Last Post: snippsat
  Pthyon 3 question (newb) bennylava 11 6,143 Feb-28-2019, 06:04 PM
Last Post: buran
  newb selfie PatM 5 3,752 Feb-19-2019, 12:20 AM
Last Post: snippsat
  Newb Question - Threading in Crons vvarrior 2 2,887 Jul-20-2018, 08:12 PM
Last Post: vvarrior
  Matt's newb question 1 MattSS102 1 2,786 Aug-28-2017, 03:27 AM
Last Post: BerlingSwe

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020