Thursday, April 27, 2023

Automating My Daily Log with Power Automate and OneNote

Screenshot of Power Automate flow

If you do something manually every day, it’s usually a good candidate for automation. I was creating a new OneNote page every morning—and it quickly became something I knew I could automate.

The Problem: A Repetitive Manual Task

Keeping a daily log is a great way to stay organized and on top of your tasks. I used to create a new page in my OneNote notebook every day, but it was a manual process that took time and effort. 

Building the Flow

That's why I decided to create a Power Automate flow that would automatically add a new page to my OneNote notebook every day at 7am.

What I Wanted to Achieve

Here's what I wanted my daily log to include:
  • The date in the title
  • Section for Highlight (priority task)
  • Section on Yesterday (What I was working on yesterday)
  • Section on Today (What I will work on today)
  • Section on Start of Day checklist (with a number of checkbox fields)
  • Section on Working area
  • Section on End of Day checklist (with a number of checkbox fields)
Screenshot of OneNote daily log

The Problems I Hit

I encountered three problems when creating this flow, but I was able to overcome them.

1. Getting it to run Monday to Friday

The controls in Power Automate give you the option to set a frequency for your flow, and my initial idea was to set it to "once per day". However, this would include weekends, which I didn't want. After thinking for a bit, I figured out that I could set the frequency to "Weeks interval 1" and then choose which days of the week to include. It wasn't very intuitive, but I was able to figure it out.

Screenshot of the Reccurence block

2. Adding the date to the title

In the OneNote "Create a page in section" block, there wasn't a setting to enter a title. It only had a text entry for any template text you want on the page. After some trial and error, I discovered that I could switch the text entry to HTML and enter a full HTML page into the editor. Using the <title> tag within <head>, I was able to automate the title. I then added the formatDateTime function, which allowed me to get the title to be today's date in a long format.

Screenshot of HTML title

3. Adding checkboxes

I really wanted to have checkboxes to check off my day start and end routines, but I couldn't figure out how to add checkboxes into the HTML. After some Googling, I found the data-tag="to-do" attribute, which gave me exactly what I was looking for. I added this attribute to the <p> tags in the Start of Day and End of Day sections, and it created checkboxes in OneNote.

Screenshot of HTML data tag


What Actually Worked

In the end, a simple scheduled flow with a weekday trigger handled the timing reliably.

Using a bit of HTML formatting allowed me to dynamically create the page title and structure the content properly, including checkboxes.

Once it was set up, the whole process became automatic—removing a small but consistent daily task.

The Bigger Pattern

This wasn’t really about OneNote or Power Automate—it was about removing friction from a daily process.

If something is repetitive, it’s usually worth automating.

Where This Shows Up

What This Means

Overall, this flow has saved me a lot of time and effort, and it's helped me stay organized and focused on my tasks. If you're interested in creating a similar flow, I hope my experience can help you overcome any challenges you might encounter.

Small automations can remove a surprising amount of friction from everyday work.

I spend a lot of time simplifying and automating processes to make systems easier to use and maintain.

You can take a look at my TechFix service if you’ve got something repetitive that should be simpler.