Cette fois, lorsque le stagiaire a changé le fichier Excel existant sous la forme qu'il voulait utiliser cette fois, il l'a automatisé à l'aide de la bibliothèque python, je vais donc l'écrire ici.
Il existe déjà plusieurs feuilles de calcul contenant des informations personnelles, mais il est difficile de retirer chacune d'entre elles de l'enfant, donc je rassemble les informations dans une feuille de calcul et la remets immédiatement au client. C'est plus facile à faire. Dans ce cas, il est nécessaire de copier les parties spécifiées dans une nouvelle feuille de calcul une par une, mais le travail manuel est assez gênant. Je veux donc l'automatiser avec python.
openpyxl (https://note.nkmk.me/python-openpyxl-usage/)
--Créez un tableau en extrayant la valeur spécifiée pour chaque feuille --Mettez le tableau dans un nouveau tableau pour créer un tableau à deux dimensions --Écriture basée sur le tableau à deux dimensions
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)
N'oubliez pas de sauvegarder à la fin. Si vous ne le faites pas, cela ne sera pas reflété.
sample.py
wb_to.save('hoge.xlsx')
Si vous souhaitez diviser davantage les caractères extraits, utilisez une expression régulière. Ce que je voulais faire cette fois, c'est 「hogehogehoge(fugafuga)」 Je voulais le diviser en deux parties, l'une entre parenthèses et l'autre. La conclusion est la suivante.
sample.py
list = re.match(r"(?P<comment>.*?)(?:[\((](?P<name>.*?)[)\)])?$",sentence)
temp.append(list['comment'])
temp.append(list['name'])
Recommended Posts