所以,我的问题如下:
使用下面写的此脚本,我成功地格式化了提取的Excel纸中的某些单元格。它旨在接受任何Excel文件,只要它正确输入并且以相同的格式输入(出于我的目的,它始终以相同的格式)。
我的下一步(我的问题)是:如何抓住格式化的单元格及其相应的行,然后将这些行打印到新文件中。
使用一个非常相似的程序,我可以使用所选格式的Excel文件。但是不知道我的课程
def ready():
print("Type the name of the excel file you wish to analyze.")
while True:
try:
a_input = input(">> ")
df = pd.read_excel("{}".format(a_input), parse_cols = "AS")
df2 = pd.read_excel("{}".format(a_input), parse_cols = "B")
df3 = pd.read_excel("{}".format(a_input), parse_cols = "A")
df4 = pd.read_excel("{}".format(a_input), parse_cols = "D")
df5 = pd.read_excel("{}".format(a_input), parse_cols = "C")
except IOError:
print("The file name was either entered incorrectly or is not in the directory")
else:
print("--------------------File Grab Successful--------------------")
break
time.sleep(2)
print("Grabbing the required data.....nn")
df.set_index('Last Date of Support', inplace=True)
df2.set_index('Product Series', inplace=True)
df3.set_index('Product Family', inplace=True)
df4.set_index('Item Name', inplace=True)
df5.set_index('Item Type', inplace=True)
time.sleep(2)
print("--------------Creating Excel Document with required data------------------nn")
time.sleep(2)
print("Type the name you want for the excel file that will be created. Be sure to add the file extension on the end (EX: filename.xlsx)")
b_input = input(">> ")
writer = pd.ExcelWriter('{}'.format(b_input), engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1', startrow=-1, startcol=0)
df2.to_excel(writer, sheet_name='Sheet1', startrow=-1, startcol=4)
df3.to_excel(writer, sheet_name='Sheet1', startrow=-1, startcol=2)
df4.to_excel(writer, sheet_name='Sheet1', startrow=-1, startcol=3)
df5.to_excel(writer, sheet_name='Sheet1', startrow=-1, startcol=1)
workbook = writer.book
worksheet = writer.sheets['Sheet1']
date = datetime.datetime.strptime('2018-01-01', "%Y-%m-%d")
format1 = workbook.add_format({'bg_color': '#FFC7CE',
'font_color': '#9C0006'})
worksheet.conditional_format('A2:A20000', {'type': 'date',
'criteria': 'less than',
'value': date,
'format': format1})
writer.save()
print("Goodbye!")
time.sleep(5)
ready()
使用一个非常相似的程序,我可以使用所选格式的Excel文件。但是不知道我的行动是什么。这是我尝试过的示例。
format1 = workbook.add_format({'bg_color': '#FFC7CE',
'font_color': '#9C0006'})
for i in df == format1:
print(i)
但我一直遇到错误。
对不起,编辑帖子,我在完成之前单击了预付款。
您写的循环不正确。那是因为df==format1
等于布尔 True
。如果仅在某种条件保持时才打印i
,请执行:
upperBound = 1000
for i in range(upperBound):
if df==format1:
print(i)