In the subsearch, you specified the field to return (Account_Name). Therefore, that is the only field that was retrieved from the lookup table. Also, you can't return other fields at that point without messing up your search. Assuming that the fields are named "Start Date" and "Return Date", and that these fields have dates in the form of Year-Month-Day, try the following
[inputlookup employee_vac | fields Account_Name] (index=winserver_events OR index=win-dc-security)
sourcetype="WinEventLog:Security" eventtype="msad-nt6-successful-user-logons" EventCode="4624" Account_Name="*"
| lookup employee_vac Account_Name
| eval start_date = strptime('Start Date',"%Y-%m-%d")
| eval return_date = strptime('Return Date',"%Y-%m-%d")
| where _time > start_date AND _time < return_date
| eval date=strftime(_time, "%Y-%m-%d") | eval Account_Name=lower(Account_Name)
| table date, "Start Date", "Return Date", Account_Name, Workstation_Name, src_ip, Logon_Type
Note that this solution (as well as the original one) implies that there is only one listing in the lookup table per Account_Name. If this is not true, you should probably change to a time-based lookup. Here is a link to the documentation.
... View more