Je veux colorer une partie de la chaîne Excel avec Python

introduction

Comme le titre l'indique, il lit un fichier Excel en utilisant Python et génère une partie de la chaîne de caractères écrite dans la cellule avec la couleur. Au début, je prévoyais d'utiliser openpyxl, mais il semblait que je ne pouvais pas faire ce que je voulais, alors j'ai décidé d'utiliser ** write_rich_string ** de xlsxwriter pour le faire. Cependant, xlsxwriter ne peut pas lire, donc j'utiliserai openpyxl pour la partie lecture et xlsxwriter pour la partie écriture. J'ai choisi ~~ Python parce que je n'y ai pas beaucoup touché. ~~

Choses à faire

  1. Chargez Excel avec Python

openpyxl


import openpyxl

#Ouvrez le fichier avec openpyxl
iptbook = openpyxl.load_workbook(filename='test.xlsx')
#Sélection de feuilles
iptsheet = iptbook.worksheets[0]
#Obtenir la chaîne de cellule
cellvalue = iptsheet.cell(row=1, column=1).value
#Fin
iptbook.close()
  1. Colorez une partie de la chaîne de caractères dans la cellule et la sortie

xlsxwriter


import xlsxwriter

#Créer un livre avec xlsxwriter
optbook = xlsxwriter.Workbook('opt.xlsx')
#Ajouter une feuille avec xlsxwriter
optsheet = optbook.add_worksheet()
#Définir le format
red = optbook.add_format({'color': 'red'})
#Personnages séparés
splitvalue = cellvalue.split()
#Écrire en texte enrichi
optsheet.write_rich_string('A1', red, splitvalue[0], splitvalue[1])
#Fin
optbook.close()

résultat

Ce sera le fichier avant et après l'exécution.

bf.PNG

af.PNG

Articles que j'ai utilisés comme référence

Example: Writing “Rich” strings with multiple formats

Je souhaite utiliser Python pour gérer des éléments qui ont plusieurs formats (polices) mélangés dans une cellule dans Excel

en conclusion

Avec le texte enrichi, vous pouvez modifier non seulement la couleur, mais également l'épaisseur de ligne et la police. Cette fois, il a été réalisé en utilisant deux bibliothèques en combinaison. Si quelqu'un connaît un meilleur moyen, je vous serais reconnaissant de bien vouloir me le faire savoir.

Recommended Posts

Je veux colorer une partie de la chaîne Excel avec Python
Je souhaite intégrer une variable dans une chaîne Python
Je veux convertir par lots le résultat de "chaîne de caractères" .split () en Python
Je veux facilement implémenter le délai d'expiration en python
Je veux écrire en Python! (2) Écrivons un test
Je veux échantillonner au hasard un fichier avec Python
Je veux travailler avec un robot en python.
Je veux ajouter un joli complément à input () en python
Je veux imprimer dans la notation d'inclusion
Créer une instance d'une classe prédéfinie à partir d'une chaîne en Python
Comment transformer une chaîne en tableau ou un tableau en chaîne en Python
Obtenez la formule dans le fichier Excel sous forme de chaîne en Python
Je veux faire le test de Dunnett en Python
Comment incorporer des variables dans des chaînes python
Je souhaite extraire une URL arbitraire de la chaîne de caractères de la source html avec python
Je souhaite convertir une table convertie en PDF en Python en CSV
Je veux fusionner des dictionnaires imbriqués en Python
Je souhaite trier une liste dans l'ordre des autres listes
Ouvrez un fichier Excel en Python et coloriez la carte du Japon
Je souhaite laisser une commande arbitraire dans l'historique des commandes de Shell
J'ai fait un programme pour vérifier la taille d'un fichier avec Python
Je veux écrire dans un fichier avec Python
Insérer un objet dans une chaîne en Python
Python: je souhaite mesurer proprement le temps de traitement d'une fonction
J'ai essayé d'implémenter le jeu de cartes de Trump en Python
Je veux afficher la progression en Python!
Je veux faire un patch monkey seulement en partie en toute sécurité avec Python
Je veux améliorer l'efficacité avec Python même dans un système expérimental (3) Je veux faire quelque chose comme Excel avec Pandas
Je souhaite créer une file d'attente prioritaire pouvant être mise à jour avec Python (2.7)
Je souhaite envoyer Gmail avec Python, mais je ne peux pas en raison d'une erreur
J'ai créé une commande appdo pour exécuter des commandes dans le contexte de l'application
Je souhaite voir une liste de fichiers WebDAV dans le module Requêtes
Je souhaite stocker les résultats de% time, %% time, etc. dans un objet (variable)
Le programme Python est lent! Je veux accélérer! Dans ce cas ...
Je veux écrire en Python! (1) Vérification du format de code
Comment convertir / restaurer une chaîne avec [] en python
Je veux répéter plusieurs fois un générateur Python
Je veux générer rapidement UUID (memo memo) ~ Edition Python ~
Je veux faire la transition avec un bouton sur le ballon
Découpez une partie de la chaîne à l'aide d'une tranche Python
Même avec JavaScript, je veux voir Python `range ()`!
[Python] Comment développer des variables dans une chaîne de caractères
J'ai essayé d'implémenter un pseudo pachislot en Python
Je veux diviser une chaîne de caractères avec hiragana
Je souhaite installer un package de Php Redis
[Python] Je veux faire d'une liste imbriquée un taple
Je veux écrire en Python! (3) Utiliser des simulacres
Je veux utiliser le jeu de données R avec python
Je veux faire fonctionner un ordinateur quantique avec Python
Je veux faire quelque chose avec Python à la fin
Je veux manipuler des chaînes dans Kotlin comme Python!
J'ai essayé de résumer les opérations de chaîne de Python
Partie 1 J'ai écrit un exemple de la réponse au problème de référence de l'écriture hors ligne en temps réel en Python
Je souhaite utiliser une source de données python dans Re: Dash pour obtenir les résultats de la requête.
Je souhaite spécifier une autre version de Python avec pyvenv
Découvrez la largeur apparente d'une chaîne en python