cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
LZA
Regular Visitor

Creating an Calendar Event from an automated Email

Hello, 

 

we receive automated Emails with an Event that i want to add to a Calendar via Power Automate. 

The Email looks like this: 

 

Name: Firstname Lastname

Start: 05.05.2021

End: 10.05.2021

 

I need the "Name" as Subject , "Start" as Start Time and "End" as End Time for the Event.

 

I have tried multiple flows with HTML to text and Compose functions but i cant seem to get them working. I also cant seem to wrap my Head around the Variables that i can use. What would a (i think relatively simple?) flow look like? 

I do have the ability to change the automatic Mail if it is needed for a solution. 

3 ACCEPTED SOLUTIONS

Accepted Solutions
v-duann-msft
Community Support
Community Support

Hi @LZA

 

You want to create an Calendar Event from an automated Email. You can combine the Last/First function and Split function to get the content of "Name" "Start" "End".

 

I created the flow according to your description and final test can create it. Please take a try with the following steps:

v-duann-msft_0-1620274262792.png

 

Expression:last(split(outputs('Compose'),'Name: '))

v-duann-msft_1-1620274262794.png

 

Expression:first(split(outputs('Compose_3'),'Start: '))

v-duann-msft_2-1620274262796.png

 

Expression:last(split(outputs('Compose'),'Start: '))

v-duann-msft_3-1620274262798.png

 

Expression:first(split(outputs('Compose_4'),'End: '))

v-duann-msft_4-1620274262799.png

 

Expression:last(split(outputs('Compose'),'End: '))

v-duann-msft_5-1620274262801.png

 

v-duann-msft_6-1620274262805.png

 

When a new email arrives, the calendar can be created.

v-duann-msft_7-1620274262807.png

 

v-duann-msft_8-1620274262811.png

 

You can refer to this document to see how these functions are used.

https://docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference

 

Hope the content above may help you.

 

Best Regards

Anna

View solution in original post

v-duann-msft
Community Support
Community Support

Hi @LZA

 

Thank you for your responding.

 

If you want Format the Date from MM/DD/YYYY to DD/MM/YYYY.  You can use expression: "formatDateTime" in Start time and End time as below: 

 

Expression:formatDateTime(outputs('Start'),'dd-MM-yyyy')

v-duann-msft_0-1620618720022.png

 

Expression:formatDateTime(outputs('End'),'dd-MM-yyyy')

v-duann-msft_1-1620618720025.png

 

When a new email arrives , the Calendar can be created.

v-duann-msft_2-1620618720027.png

 

v-duann-msft_3-1620618720029.png

 

Hope the content above may help you.

 

Best Regards

Anna

View solution in original post

v-duann-msft
Community Support
Community Support

Hi @LZA 

 

Thank you for your responding.

 

If the Date in the automated mail is always in format dd/MM/yyyy and you can't change the format. You can split the date from email and than regroup it.

 

You could refer to screenshot below to modify the flow.

 

Insert Compose named Day under Start , the expression in the Day as below:

first(split(outputs('Start'),'.'))

v-duann-msft_0-1621241900654.png

 

The expression in the Month as below:

first(skip(split(outputs('Start'),'.'),1))

v-duann-msft_1-1621241900656.png

 

The expression in the Year as below:

last(split(outputs('Start'),'.'))

v-duann-msft_2-1621241900657.png

 

The expression in the Start date field as below:

concat(outputs('month'),'/',outputs('day'),'/',outputs('year'))

v-duann-msft_3-1621241900658.png

 

Use the same method to get the End date

v-duann-msft_4-1621241900661.png

 

Then save Flow and can test it. When receive the email as below:

v-duann-msft_5-1621241900662.png

 

The calendar can be created as below:

v-duann-msft_6-1621241900662.png

 

You can refer to this document to see how these functions are used.

https://docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference

 

Hope the content above may help you.

 

Best Regards

Anna

View solution in original post

7 REPLIES 7
v-duann-msft
Community Support
Community Support

Hi @LZA

 

You want to create an Calendar Event from an automated Email. You can combine the Last/First function and Split function to get the content of "Name" "Start" "End".

 

I created the flow according to your description and final test can create it. Please take a try with the following steps:

v-duann-msft_0-1620274262792.png

 

Expression:last(split(outputs('Compose'),'Name: '))

v-duann-msft_1-1620274262794.png

 

Expression:first(split(outputs('Compose_3'),'Start: '))

v-duann-msft_2-1620274262796.png

 

Expression:last(split(outputs('Compose'),'Start: '))

v-duann-msft_3-1620274262798.png

 

Expression:first(split(outputs('Compose_4'),'End: '))

v-duann-msft_4-1620274262799.png

 

Expression:last(split(outputs('Compose'),'End: '))

v-duann-msft_5-1620274262801.png

 

v-duann-msft_6-1620274262805.png

 

When a new email arrives, the calendar can be created.

v-duann-msft_7-1620274262807.png

 

v-duann-msft_8-1620274262811.png

 

You can refer to this document to see how these functions are used.

https://docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference

 

Hope the content above may help you.

 

Best Regards

Anna

View solution in original post

LZA
Regular Visitor

Hi @v-duann-msft 

 

thanks a lot for the Help, i managed to get the Flow startet and so far everything works fine. 

I was wondering, if there is a way to Format the Date to DD/MM/YYYY as it is in MM/DD/YYYY as far as i can tell. 

I tried working with the expression: "formatDateTime" but i cant seem to work out where exactly i have to put it in my Flow. 

 

Greetings 

 

Lorenzo

v-duann-msft
Community Support
Community Support

Hi @LZA

 

Thank you for your responding.

 

If you want Format the Date from MM/DD/YYYY to DD/MM/YYYY.  You can use expression: "formatDateTime" in Start time and End time as below: 

 

Expression:formatDateTime(outputs('Start'),'dd-MM-yyyy')

v-duann-msft_0-1620618720022.png

 

Expression:formatDateTime(outputs('End'),'dd-MM-yyyy')

v-duann-msft_1-1620618720025.png

 

When a new email arrives , the Calendar can be created.

v-duann-msft_2-1620618720027.png

 

v-duann-msft_3-1620618720029.png

 

Hope the content above may help you.

 

Best Regards

Anna

View solution in original post

LZA
Regular Visitor

Hi, the format date has worked for me now. But i ran into a different Problem.

The Date in the automail is always in format dd/MM/yyyy and i cant change the format. 

An input of 10.05.2021 Begin and 11.05.2021 End works just fine, but when i change it to for example 14.05.2021 Begin and 15.05.2021 End i get an error, since there is no 15.05.2021 in a MM/dd/yyyy Format.

Is there a way to solve this Problem? 

 

Thanks for the Help so far

 

Greetings 

 

Lorenzo

v-duann-msft
Community Support
Community Support

Hi @LZA 

 

Thank you for your responding.

 

If the Date in the automated mail is always in format dd/MM/yyyy and you can't change the format. You can split the date from email and than regroup it.

 

You could refer to screenshot below to modify the flow.

 

Insert Compose named Day under Start , the expression in the Day as below:

first(split(outputs('Start'),'.'))

v-duann-msft_0-1621241900654.png

 

The expression in the Month as below:

first(skip(split(outputs('Start'),'.'),1))

v-duann-msft_1-1621241900656.png

 

The expression in the Year as below:

last(split(outputs('Start'),'.'))

v-duann-msft_2-1621241900657.png

 

The expression in the Start date field as below:

concat(outputs('month'),'/',outputs('day'),'/',outputs('year'))

v-duann-msft_3-1621241900658.png

 

Use the same method to get the End date

v-duann-msft_4-1621241900661.png

 

Then save Flow and can test it. When receive the email as below:

v-duann-msft_5-1621241900662.png

 

The calendar can be created as below:

v-duann-msft_6-1621241900662.png

 

You can refer to this document to see how these functions are used.

https://docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference

 

Hope the content above may help you.

 

Best Regards

Anna

View solution in original post

LZA
Regular Visitor

Hi, @v-duann-msft  thanks for the Help so far, the formatting works just fine now,

but i encountered another small problem, i need the Event to show the last day Full but it stops on 24.05.2021 0:00 for me and therefore does not show the event on the 24th in my Calendar. 

I think adding a Time, like 16:30 (HH:mm) would solve the problem. How could i add the Time to the Output of "End-Date" i tried "addHours(outputs('End-Date'),16)" but it does not work for me

LZA
Regular Visitor

I just managed to solve it with:

 

addDays(outputs('End Date'),0) (to get the output:  "2021-05-24T00:00:00.0000000"

and then: addHours(outputs('Datum_Ende_+0'),17) to get the output: "2021-05-24T17:00:00.0000000"

This worked fine for me and now shows as wanted in the Calendar. 

Thanks for the Help.

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.

Top Solution Authors
Top Kudoed Authors
Users online (1,354)