from openpyxl import load_workbook
from openpyxl import workbook
import yfinance as yf
import datetime as datetime
from datetime import datetime as dt
import openpyxl
import pandas as pd
import numpy as np
wb = openpyxl.load_workbook(filename = 'test.xlsx')
xlslist=[]
sheetlist=list(wb.sheetnames)
for x in wb['Main']["A":"A"]:
if x.value.isupper():
xlslist.append(x.value) # add ticker symbols which are written in uppercase into list
writer=pd.ExcelWriter("test.xlsx")
for y in xlslist:
print(y)
if y in sheetlist:
worksheet=wb[y]
info=pd.DataFrame(yf.Ticker(y).history(start="2000-02-02",end=dt.now()))
print(info)
with pd.ExcelWriter("test.xlsx",engine='openpyxl') as writer:
info.to_excel(writer,sheet_name=y)
elif y not in sheetlist:
wb.create_sheet(y)
worksheet=wb[y]
yf.Ticker(y).history(start="2000-02-02",end=dt.now())
print(info)
with pd.ExcelWriter("test.xlsx",engine='openpyxl') as writer:
info.to_excel(writer,sheet_name=y)
wb.save('test.xlsx')
Начало с файла Excel с именем test.xlsx, с одним рабочим листом с именем «Main». Намерение состоит в том, чтобы увидеть, какие тикеры записаны на основном листе, создать новый лист с каждым листом, символ тикера с историческими значениями, напечатанными на листе
Но фрейм данных не копируется в файл Excel, и более того, главный рабочий лист удаляется и заменяется только одним листом с одним тикером, тогда как он должен показывать четыре листа с каждым листом с именем каждого из четырех тикеров
Может ли кто-нибудь помочь с этой проблемой? Я новичок в программировании, поэтому, пожалуйста, простите меня, если я написал довольно плохой код.