Я пытаюсь запустить лист Excel и скопировать все строки, где столбец «B» начинается со значения «A-P1» или «A-S1», и скопировать строку в два отдельных файла Excel (один файл для P1 и один для значений S1).
В настоящее время я добился этого с помощью следующего кода:
for row in ws.iter_rows(values_only=True):
for value in row:
if str(value).startswith("A-P1"):
ws2.append(row)
elif str(value).startswith("A-S1"):
ws3.append(row)
- это исходный файл Excel, а ws2 и 3 - новый. Это работает, и я могу создать два новых файла Excel с добавленными строками, как и ожидалось. НО; Я также знаю, что есть строки, где столбец B начинается не с A-P1 или A-S1, а с произвольной строкой. Мне также нужно разделить эти строки, но я не могу это сделать. При добавлении
else:
ws.append(row)
все строки исходного листа добавляются несколько раз. Я предполагаю, что это потому, что он проходит по всем ячейкам в строке, и каждая строка имеет 13 столбцов.
Короче говоря, я хотел бы, чтобы "если значение в строке (столбец" B ") начинается с X затем скопируйте всю строку ". Как это возможно?