Last reviewed on June 1, 2015   —  25 Comments

A common request is how to make recurring appointments for every x number of workdays. Unfortunately Outlook does not offer this type of recurring option. You can use a third party add-in, WS:Repeat Appointment II, to create recurrences not supported by Outlook. If this is a frequent need, its well worth the cost but if your needs are infrequent, you can use Excel to create the recurrence pattern and import it into Outlook.

Use VBA to create appointments for every xx weekday

You can either start with a blank workbook and create your own fields which will need mapped to Outlook's fields when you import it, or export your calendar from Outlook to Excel, then delete the appointments from the workbook, leaving just the field names. Or download an Excel workbook with the calendar fields and a few lines of sample data.

If you create the workbook yourself, you should use the start and end time fields, along with the subject field and the date field, of course. Any other fields are optional.

Prepare the Excel Workbook

Row 1 contains the field names.

Cell A2 contains the starting date.

Cell A3 contains the formula you need to calculate workdays: =WORKDAY(A2,4,F2:F147) The first parameter is the cell it bases the date calculation on. The second is the number of days. In my example, the calculation is for the 4th workday. The final parameter is an array of holidays. You are only required to to use the first two parameters =WORKDAY(A2,4) if you don't need to consider holidays, only weekdays.

Drag Cell A3 down to fill the cells. If the subject and time fields will be the same for each appointment, drag to fill these cells too. Use the method at Create Countdown Calendar Items to fill the subject field with consecutive numbers, such as Meeting 1, Meeting 2, etc.

Enter the dates to be skipped in Column F.

I used the "Use Custom View Data in Another Program" method to display a list of the holiday dates in Outlook, which I copied and pasted into Excel. You'll need to change the Field format in Outlook to display just the date for it to work. Do this by right clicking on the field name and choose Format columns.

Use Excel to create appointments

  1. When you are finished creating the spreadsheet, select and copy the cells you will be importing then use Paste Special, Values to paste the data in Sheet 2. By doing this you will avoid the need to make a named range.
  2. Save Sheet 2 using Comma Separated Value (CSV) format.

If you want to save the workbook with the formulas intact, choose Save As and save it in Excel format.

To import the appointments into Outlook

In Outlook:

  1. Select File, Import and Export (File, Open, Import in Outlook 2010)
  2. Select Import from another program or file.
  3. Select the program or file type. In this example, we're using Comma Separated Value (CSV)
  4. Browse for the file. (If the file is still open in Excel, it will cause an error.)
  5. Select the Calendar folder you want to Import the file into.
  6. If fields need mapped, use the Map Custom fields dialog.
  7. Outlook doesn't recognize Date, so I need to drag it to Start Date and Outlook adds it to the Mapped From column next to Start Date.
    use the map custom fields dialog
  8. Click Finish to import your items.


    • Diane Poremsky says

      That won't handle every 4th weekday and skip holidays. It will make every xx Monday etc.

  1. Becky says

    So...if I want to schedule a task to be completed every other Sat & Sun I have to go through that long rigamarole to do it?

    • Diane Poremsky says

      Only if the pattern isn't available in Outlook - the weekly pattern to recur every 2 weeks on sat and sun. I think if you start it on a Sat it's due, it will work.
      Task recurrence pattern

  2. Neil says

    Exactly what I need and I have followed the above, but I need to invite more than one attendee, however when I use;;

    It doesn't seem to import this when converting to outlook and therefore no invites are sent out. Please advise how to import RequiredAttendees into Outlook so it sends invites?

  3. Ellen Farley says

    I followed the instructions and imported the list, however, it didn't create appointments on my calendar, any suggestions?

    • Diane Poremsky says

      Step through the macro using F8 or the Step into command on the Debug menu. Does it skip any lines?

  4. Amanda Hunt says

    Hi, I created your spreadsheet and it worked perfectly but how do I get them to recur on the same working day each month? Once I mark them as completed they disappear.

  5. Amanda Hunt says

    I am trying to make recurring tasks that occur on a particular working day of the month (i.e. working day 7). I have created them using your method but when I mark them complete for the month I'm in they don't re-appear in the next month.


    • Diane Poremsky says

      For tasks, you need to use the task pattern and regenerate them. That can't be set on import, you need to either do it manually or using VBA.

  6. Ashley says

    How would I create appointments for every x workday of the month? For example, what if I only wanted the appointment on the 5th working day of every month, meaning there would only be one day each month that this appointment is occurring?

    • Diane Poremsky says

      use this formula in the spreadsheet: =WORKDAY(A2,5-1) - column A (or another column) has the 1st of each month - 9/1/2014, 10/1/2014 etc. If you need other workdays, change the 5 to the desired value. (You could use 4 instead of 5-1, but this serves as a reminder that it's the 5th working day.)

    • Diane PoremskyDiane Poremsky says

      Should be able to do that with the macro. Are the 3 On days 24 hours? If the hours are the same, you can use 3 recurring appointments for every 3 days. if they are 24 hours on, you could use 1 appointment and a multiday recurring event. When it's shift work (that keeps shifting :)), a macro or a spreadsheet can do it.

  7. Kalin says

    What if I would like it to be the fourth workday of a month versus a week? Is there a way to do that?

    • Diane PoremskyDiane Poremsky says

      I think this formula will work - EOMONTH is the end of the month - you'll use the last day of the previous month as the starting point.

  8. Tom Ellett says

    This is really great, but when I try to import the CSV file, the "Map Custom Fields" button is grayed out and so is the "Next" button. I have tried using the "Change Destination" button, but no matter what I choose, I can't go on. Any ideas? I'm using the latest version of Outlook, if that matters. Thanks!

  9. Sarah R says

    I created an appointment in Outlook 2013 for Windows running on Exchange Server. I clicked the radio button and typed 2 in the box just as in Diane Poremsky's Nov. 14, 2012, post above and the appointment shows up every (1) week. Is this a bug?

    • Diane PoremskyDiane Poremsky says

      I'm not aware of any bugs in this area, it should work. You created an appointment and set the recurrence pattern to 2 weeks and it created it weekly? If you open the series and look at the recurrence dialog, is 1 or 2 in the box?

Leave a Reply

Please post long or more complicated questions at OutlookForums by

If the Post Comment button disappears, press your Tab key.