Как добавлять значения всегда с нового столбца

Код (всё нужное я уже описал):
Это пример значения x:

[['Топаз Свисс Блю'],
 ['4704931АЧ'],
 ['4704062А'],
 ['4700505'],
 ['4700405'],
 ['4490005'],
 ['4489905'],
 ['4489805'],
 ['4489605'],
 ['4486905А'],
 ['4480605А'],
 ['4474705Ч'],
 ['4471705'],
 ['4470505А'],
 ['4470405В'],
 ['447040']]
for x in name:
    for y in x:
        ws.append(y) 
wb.save('Data.xlsx')

Мне нужно чтобы каждый цикл начинался с нового столбца. Тогда получится Топаз Свисс Блю и перечисление. То что первое это название всё остальное артикулы. На первой картинке то как у меня получается То как у меня показывается

Мне нужно чтобы было так введите сюда описание изображения


Ответы (1 шт):

Автор решения: Сергей Кох

Если воспользоваться регулярным выражением, то при отсутствии цифр в названии столбцов можно сделать так:

from openpyxl import Workbook
import re

name = [['Топаз Свисс Блю'], ['4704931АЧ'], ['4704062А'], ['4700505'], ['4700405'], ['4490005'], ['4489905'], ['4489805'],
        ['4489605'], ['4486905А'], ['4480605А'], ['4474705Ч'], ['4471705'], ['4470505А'], ['4470405В'], ['447040'],
        ['Аура'], ['6569330'], ['6569242'], ['6569207'], ['6569203'], ['6569003'], ['6568741'], ['6568703'],
        ['6568142'], ['6568103'], ['4467141'], ['4467103'], ['4466742'], ['4466142'], ['4466103']]

book = Workbook()
sheet = book.active

i = 1
j = 0
for x in name:
    if re.search(r'[0-9]', x[0]) is None:
        j += 1
        i = 1
        sheet.cell(row=i, column=j).value = x[0]
    else:
        i += 1
        sheet.cell(row=i, column=j).value = x[0]

book.save('Data.xlsx')

таблица

→ Ссылка