to_excel leaves ExcelWriter Handle Open
Hello,

try

```python
import requests
from pandas.io.json import json_normalize
import json
import pandas as pd
response = requests.get("http://api.openweathermap.org/data/2.5/history/station?start=1356220800&end=1356307200&type=hour&id=5530")
df = json_normalize(json.loads(response.text)['list'])
df['dt'] = pd.to_datetime(df['dt'], unit='s')
#df = df.set_index('dt')
df = df[['dt', 'main.temp.ma']]
print(df)

engine = 'openpyxl'
filename = "out_%s.xlsx" % engine
writer = pd.ExcelWriter(filename, engine=engine)
#df.to_excel("out.xls")
df.to_excel(writer)

engine = 'xlsxwriter'
filename = "out_%s.xlsx" % engine
writer = pd.ExcelWriter(filename, engine=engine)
#df.to_excel("out.xls")
df.to_excel(writer)

engine = 'xlwt'
filename = "out_%s.xls" % engine
writer = pd.ExcelWriter(filename, engine=engine)
#df.to_excel("out.xls")
df.to_excel(writer)
```

Only `out_xlsxwriter.xlsx` is create
I was expecting `out_openpyxl.xlsx` and `out_xlwt.xls` to be created.

See also https://github.com/pydata/pandas/issues/9139

Kind regards
