es geht um ein alt bekanntes Thema für welches ich allerdings noch keine Lösung gefunden habe....
Und zwar möchte ich in einer bereits existierenden Excel-Datei Werte ändern.
Werte einfügen funktioniert ja relativ einfach mit diesen 2 Methoden (Nur Beispiel-code):
Code: Alles auswählen
import openpyxl
excel_name = 'C:/Users/ICH/Desktop/Beispiel.xlsx'
print(excel_name)
wb = openpyxl.load_workbook(excel_name)
sheet = wb.get_sheet_by_name('Tabelle1')
sheet.cell(row=1,column=1).value=1
sheet.cell(row=1,column=2).value=2
wb.save(excel_name)
oder
Code: Alles auswählen
import pandas as pd
from openpyxl import load_workbook
df = pd.DataFrame({'hallo':[1,2,3],
'ciao':[4,5,6]})
book = load_workbook(excel_name)
writer = pd.ExcelWriter(excel_name, engine='openpyxl')
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
df.to_excel(writer, "Tabelle1", index=False)#####?????
writer.save()
Nun zum Problem...In meiner Excel-Datei habe ich schon eine fertige Auswertung mit Diagrammen und Bildern. Wenn ich neue Werte einfach nur dazu schreibe (ohne Einfluss auf die Diagramme) und die Excel-Datei danach öffnen will, will Excel diese reparieren und dabei verhagelt es alles Visuelle....nur die Werte bleiben bestehen (die Alten, wie die Neuen)...Kann man das irgendwie umgehen?
Das letztendliche Ziel wäre, dass ich Werte an eine bestimmte Stelle in der Excel-Datei eintrage (dabei andere Werte ersetze). Diese Werte sind werden in der Excel mit etwas anderem verrechnet. Das Ergebnis daraus wird in einem Diagramm geplottet, was schon vorhanden ist.
Vielleicht ist es mit einem Beispiel leichter zu verstehen:
Ich habe bereits eine Excel, in welcher eine Gerade mit Werten geplottet ist (y=mx+c)....Ich möchte mit Python auf diese Excel zugreifen, die Werte ändern, sodass ein neuer Plot entsteht und es nicht das Diagramm beim erneuten öffnen verspult und ich nur eine Wertetabelle habe.
Hat jemand dafür eine Idee zur Lösung?
Vielen Dank für eure Anregungen und Tipps....