Dieses Mal, als der Praktikant die vorhandene Excel-Datei in das Formular änderte, das er dieses Mal verwenden wollte, automatisierte er sie mithilfe der Python-Bibliothek, sodass ich sie hier schreiben werde.
Es gibt bereits mehrere Tabellen mit persönlichen Informationen, aber es ist mühsam, jede aus dem Kind herauszuholen. Deshalb habe ich die Informationen in einer Tabelle zusammengefasst und die Informationen sofort an den Kunden übergeben. Es ist einfacher zu tun. In diesem Fall müssen die angegebenen Teile einzeln in eine neue Tabelle kopiert werden, die manuelle Arbeit ist jedoch recht mühsam. Also möchte ich es mit Python automatisieren.
openpyxl (https://note.nkmk.me/python-openpyxl-usage/)
--Erstellen Sie ein Array, indem Sie den angegebenen Wert für jedes Blatt extrahieren
sample.py
def write_list_2d(sheet, l_2d, start_row, start_col):
for y, row in enumerate(l_2d):
for x, cell in enumerate(row):
sheet.cell(row=start_row + y,
column=start_col + x,
value=l_2d[y][x])
l_2d = [['four', 41, 42, 43], ['five', 51, 52, 53]]
write_list_2d(sheet, l_2d, 5, 1)
Vergessen Sie nicht, am Ende zu sparen. Wenn Sie dies nicht tun, wird es nicht wiedergegeben.
sample.py
wb_to.save('hoge.xlsx')
Wenn Sie die extrahierten Zeichen weiter unterteilen möchten, verwenden Sie einen regulären Ausdruck. Was ich diesmal machen wollte, ist 「hogehogehoge(fugafuga)」 Ich wollte es in zwei Teile teilen, einen in Klammern und den anderen. Die Schlussfolgerung lautet wie folgt.
sample.py
list = re.match(r"(?P<comment>.*?)(?:[\((](?P<name>.*?)[)\)])?$",sentence)
temp.append(list['comment'])
temp.append(list['name'])
Recommended Posts