Ich bin neu in Python und arbeite an einem Projekt, für das ich Hilfe nutzen könnte. Also versuche ich eine vorhandene Excel-Arbeitsmappe zu modifizieren, um Bestandsdaten zu vergleichen. Zum Glück gab es ein Programm online, das alle Daten, die ich brauche, abgerufen und ich war erfolgreich in der Lage, die Daten zu ziehen und die Daten in eine neue Excel-Datei schreiben. Ziel ist es jedoch, die Daten zu ziehen und in eine bestehende Excel-Datei zu übernehmen. Außerdem muss ich die Zellenwerte in der vorhandenen Datei überschreiben. Ich glaube, dass xlwings in der Lage ist, dies zu tun, und ich denke, dass mein Code auf dem richtigen Weg ist, aber ich stieß auf einen unerwarteten Fehler. Der Fehler, den ich erhalte, ist:Daten in eine vorhandene Arbeitsmappe mit Python überschreiben
Ich fragte mich, ob jemand wusste, warum dieser Fehler aufkam? Kann jemand es auch reparieren? Ist es reparierbar? Ist mein Code falsch? Jede Hilfe oder Anleitung wird geschätzt. Vielen Dank.
import good_morning as gm
import pandas as pd
import xlwings as xw
#import income statement, balance sheet, and cash flow of AAPL
fd = gm.FinancialsDownloader()
fd_frames = fd.download('AAPL')
#Creates a DataFrame for only the balance sheet
df1 = pd.DataFrame(list(fd_frames.values())[0])
#connects to workbook I want to modify
wb = xw.Book(r'C:\Users\vince\Project\Spreadsheet.xlsm')
#sheet I would like to modify
sht = wb.sheets[1]
#modifies & overwrites values in my spreadsheet(this is where I get the type_error)
sht.range('M6').value = df1
Datentypen:
type(fd_frames)
>>> <class 'dict'>
fd_frames.values())[0].info()
>>> <class 'pandas.core.frame.DataFrame'>
RangeIndex: 22 entries, 0 to 21
Data columns (total 8 columns):
parent_index 22 non-null int64
title 22 non-null object
2012 19 non-null float64
2013 20 non-null float64
2014 20 non-null float64
2015 20 non-null float64
2016 20 non-null float64
2017 20 non-null float64
dtypes: float64(6), int64(1), object(1)
memory usage: 1.5+ KB
Mögliche doppelte von [Schreiben und Ändern einer vorhandenen Arbeitsmappe mit Python] (https://stackoverflow.com/questions/44489950/writing-and-modifying-an-existing-workbo ok-using-python) –
wie hilft pandas.DataFrame.append? Ich habe den Datenrahmen, den ich möchte. Ich habe Probleme beim Überschreiben vorhandener Daten aus meiner Excel-Datei mit dem Datenrahmen, den ich habe. Ich bin immer noch verwirrt, wie ich die Daten zu einer vorhandenen Arbeitsmappe bekomme – vdub32
Ich glaube nicht, dass ich eine vorhandene Arbeitsmappe mit diesen Funktionen aktualisieren kann. Ich habe online gesucht und glaube nicht, dass es mit diesen Funktionen möglich ist. Es ist schwierig, eine Funktion zu finden, die einen bestehenden Arbeitsplatz verändert und die Daten darin ersetzt. Vielen Dank für Ihre Hilfe und Vorschläge. – vdub32