Utiliser Excel avec Python (2)

Le but d'aujourd'hui

Chose en forme de point

--Opérer Excel (voir la dernière fois) --Comment collecter des données

Je vais l'essayer pour le moment

--Comment collecter des données --Exemple d'acquisition de données pour chaque cellule: pour nombre dans la plage (maxCellNum) --Exemple d'acquisition de données en unités de ligne: pour la ligne dans ws.iter_rows (min_row = startDataRow):

Sommaire

référence

Code que j'ai écrit

import sys
import os
import openpyxl

#Ce ne sont pas des données de ventes réelles.
#Je ne veux pas écrire directement.
targetExcel = r"..\data\Ventes.xlsx"
targetSheetName = "Ventes du mois dernier"
newFileName = "Nouveau.xlsx"
newSheetName = "test"

#À partir de A4
startDataRow = 4
startDataColumn = 1

#Ouvrez Excel
# data_only=True donne le résultat de l'expression. Sans cela, la formule elle-même peut être prise.
wb = openpyxl.load_workbook(targetExcel, data_only=True)

#Accéder aux données dans Excel
ws = wb[targetSheetName]

#Obtenez une liste vide
#Un tableau bidimensionnel avec un nombre indéterminé d'éléments ne peut pas être préparé ...
datalist = []

#Mettez les données de la ligne cible dans la liste à partir d'Excel ouvert
#Quoi qu'il en soit, je veux extraire les données ligne par ligne ...
#Déraisonnable
for row in ws.iter_rows(min_row = startDataRow):
    #Ne serait-il pas possible de combiner chaque ligne séparée par des virgules?
    tempStr = "" 
    for cellVal in row:
        #Combinez 2 éléments et les suivants avec des virgules
        if tempStr == "":
            tempStr = str(cellVal.value)
        else:
            tempStr = tempStr + ',' + str(cellVal.value)
    datalist.append(tempStr)
    print(datalist)


#Bon nouvel Excel
wb2 = openpyxl.Workbook()
ws2 = wb2.worksheets[0]
ws2.title = newSheetName

#Je veux le mettre dans la même position que l'Excel d'origine
#Je vais lister les gars qui sont joints par des virgules
#Si vous voulez le ramener, vous pouvez avoir envie de diviser les éléments de la liste.
splitList = []
for rowNum in range(len(datalist)):
    splitList = datalist[rowNum].split(",")
    for colNum in range(len(splitList)):
        ws2.cell(startDataRow + rowNum, startDataColumn + colNum).value = splitList[colNum]

#Hozon
wb2.save(newFileName)

prime

--À propos de la spécification de chemin

Code que j'ai écrit

#Dernière fois
targetExcel = r"../data/Ventes.xlsx"
#cette fois
targetExcel = r"..\data\Ventes.xlsx"

Postscript: le titre a été mis à jour.

Recommended Posts

Utiliser Excel avec Python (1)
Utiliser Excel avec Python (2)
Exploitez Excel avec Python open pyxl
Excel avec Python
Gérez Excel avec python
Faire fonctionner Blender avec Python
Exploitez TwitterBot avec Lambda, Python
[Note] Faites fonctionner MongoDB avec Python
[Python] [SQLite3] Exploiter SQLite avec Python (basique)
solveur> Lien> Résoudre le solveur Excel avec python
Faites fonctionner l'imprimante de reçus avec python
Essayez d'exploiter Facebook avec Python
Faites fonctionner les appareils électroménagers ECHONET Lite avec Python
FizzBuzz en Python3
Grattage avec Python
Statistiques avec python
Grattage avec Python
Twilio avec Python
Intégrer avec Python
Jouez avec 2016-Python
AES256 avec python
python commence par ()
Bingo avec python
Zundokokiyoshi avec python
Micro-ordinateur avec Python
Cast avec python
Faire fonctionner l'alimentation smartlife avec python (de-IFTTT)
Dessinez Nozomi Sasaki dans Excel avec python
Créez rapidement un fichier Excel avec Python #python
Convertir des données Excel en JSON avec python
[GCP] Exploitez Google Cloud Storage avec Python
Essayez d'utiliser Excel en utilisant Python (Xlwings)
[Easy Python] Lecture de fichiers Excel avec openpyxl
Créer un fichier Excel avec Python + matrice de similarité
[Pyto] Faites fonctionner le Taptic Engine de l'iPhone avec Python
[Python] Utiliser automatiquement le navigateur avec Selenium
[Easy Python] Lecture de fichiers Excel avec des pandas
Communication série avec Python
Django 1.11 a démarré avec Python3.6
Jugement des nombres premiers avec Python
Python avec eclipse + PyDev.
Communication de socket avec Python
Analyse de données avec python 2
Grattage en Python (préparation)
Essayez de gratter avec Python.
Apprendre Python avec ChemTHEATER 03
"Orienté objet" appris avec python
Manipuler Redmine à l'aide de Python Redmine
Exécutez Python avec VBA
Manipuler yaml avec python
Résolvez AtCoder 167 avec python
Communication série avec python
Exploitez Filemaker depuis Python
[Python] Utiliser JSON avec Python
Apprendre Python avec ChemTHEATER 05-1
Apprenez Python avec ChemTHEATER
Exécutez prepDE.py avec python3