99% всего, что вы можете сделать вручную с помощью Excel, вы можете автоматизировать их, используя мощную библиотеку xlsxwriter.
С учетом сказанного, вот как я бы это сделал:
import pandas as pd
import numpy as np
# Create a test df
df = pd.DataFrame({'A': [1,2,3,4],
'B': ['a','b','c','d'],
'C': [2.2,np.nan,8.1,9.0],
'D': [np.nan,np.nan,np.nan,np.nan]})
# Kickstart the xlsxwriter
writer = pd.ExcelWriter('test.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1', index=False)
workbook = writer.book
worksheet = writer.sheets['Sheet1']
# Define the formats
format_green = workbook.add_format({'bg_color': 'green'})
format_red = workbook.add_format({'bg_color': 'red'})
# Apply the data validation rule
worksheet.data_validation('D2:D5', {'validate': 'list',
'source': ['High','Low']})
# Apply the conditional formating rules
worksheet.conditional_format('A2:D5', {'type': 'formula',
'criteria': '=$D2="High"',
'format': format_green})
worksheet.conditional_format('A2:D5', {'type': 'formula',
'criteria': '=$D2="Low"',
'format': format_red})
writer.save()
Вывод: