cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Serg24
Frequent Visitor

Passing keyboard shortcuts to Power Automate desktop

Hi all, 

 

I'm automating SAP application and in order to be 100% sure that my automation clicks on the correct element, I want to use SAP shortcuts (for instance, "Shift+F5" and so on). Could someone help me to understand how I can make Power Automate desktop understand them? If some specific syntax is used, I would appreciate if you share the link to the whole list (including Ctrl, Alt, and so on) and provide and example for Shift+F5 combination (because often I need to combine more that 1 shortcut).

 

I thought about using an Action "Send keys" but, as I understood it receives a string input, meaning when typing Shift I would not pass a Shift button, but 5 keys. "S", "h", "i", "f" and "t".

 

Thank you!

1 ACCEPTED SOLUTION

Accepted Solutions

Hello @Serg24

 

The "Send Keys" Action sends keystrokes to the application that is currently active. It can either be sent in the background as a software input or can be mimicked like from a keyboard when sent as hardware keys. To simulate key-presses inside a Send Keys Action, use the following notation: {KeyCode}. where KeyCode is the capital form of the letter itself for letters A-Z. OemSemicolon for ';', Oemplus for '+', Oemcomma for ',', OemMinus for '-', OemPeriod for '.', OemQuestion for '?', Oemtilde for '~', OemOpenBrackets for '[', OemPipe for '|', etc. 

 

Further {KeyCode1}({KeyCode2}) would send a combination of the keys {KeyCode1} + {KeyCode2}.

 

In your case for the key combination SHIFT + F5 you would need to use this key code: {Shift}({F5})

 

Please find the full list of valid key codes below:

Full List of Valid Key Codes

LButton
RButton
Cancel
MButton
XButton1
XButton2
Back
Tab
LineFeed
Clear
Enter
Return
ShiftKey
ControlKey
Menu
Pause
CapsLock
Capital
HangulMode
HanguelMode
KanaMode
JunjaMode
FinalMode
KanjiMode
HanjaMode
Escape
IMEConvert
IMENonconvert
IMEAccept
IMEAceept
IMEModeChange
Space
Prior
PageUp
PageDown
Next (Page Down)
End
Home
Left
Up
Right
Down
Select
Print
Execute
Snapshot
PrintScreen
Insert
Delete
Help
BrowserSearch
BrowserFavorites
BrowserHome
VolumeMute
VolumeDown
VolumeUp
MediaNextTrack
MediaPreviousTrack
MediaStop
MediaPlayPause
LaunchMail
SelectMedia
LaunchApplication1
LaunchApplication2
OemSemicolon
Oem1
Oemplus
Oemcomma
OemMinus
OemPeriod
Oem2
OemQuestion
Oem3
Oemtilde
Oem4
OemOpenBrackets
OemPipe
Oem5
OemCloseBrackets
Oem6
OemQuotes
Oem7
Oem8
Oem102
OemBackslash
ProcessKey
Packet
Attn
Crsel
Exsel
EraseEof
Play
Zoom
NoName
Pa1
OemClear
KeyCode
Shift
Control
Alt
Modifiers
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
LWin
RWin
Apps (Menu key)
Sleep
NumPad0
NumPad1
NumPad2
NumPad3
NumPad4
NumPad5
NumPad6
NumPad7
NumPad8
NumPad9
Multiply
Add
Separator
Subtract
Decimal
Divide
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
F13
F14
F15
F16
F17
F18
F19
F20
F21
F22
F23
F24
NumLock
Scroll
LShiftKey
RShiftKey
LControlKey
RControlKey
LMenu
RMenu
BrowserBack
BrowserForward
BrowserRefresh
BrowserStop

View solution in original post

10 REPLIES 10

Hello @Serg24

 

The "Send Keys" Action sends keystrokes to the application that is currently active. It can either be sent in the background as a software input or can be mimicked like from a keyboard when sent as hardware keys. To simulate key-presses inside a Send Keys Action, use the following notation: {KeyCode}. where KeyCode is the capital form of the letter itself for letters A-Z. OemSemicolon for ';', Oemplus for '+', Oemcomma for ',', OemMinus for '-', OemPeriod for '.', OemQuestion for '?', Oemtilde for '~', OemOpenBrackets for '[', OemPipe for '|', etc. 

 

Further {KeyCode1}({KeyCode2}) would send a combination of the keys {KeyCode1} + {KeyCode2}.

 

In your case for the key combination SHIFT + F5 you would need to use this key code: {Shift}({F5})

 

Please find the full list of valid key codes below:

Full List of Valid Key Codes

LButton
RButton
Cancel
MButton
XButton1
XButton2
Back
Tab
LineFeed
Clear
Enter
Return
ShiftKey
ControlKey
Menu
Pause
CapsLock
Capital
HangulMode
HanguelMode
KanaMode
JunjaMode
FinalMode
KanjiMode
HanjaMode
Escape
IMEConvert
IMENonconvert
IMEAccept
IMEAceept
IMEModeChange
Space
Prior
PageUp
PageDown
Next (Page Down)
End
Home
Left
Up
Right
Down
Select
Print
Execute
Snapshot
PrintScreen
Insert
Delete
Help
BrowserSearch
BrowserFavorites
BrowserHome
VolumeMute
VolumeDown
VolumeUp
MediaNextTrack
MediaPreviousTrack
MediaStop
MediaPlayPause
LaunchMail
SelectMedia
LaunchApplication1
LaunchApplication2
OemSemicolon
Oem1
Oemplus
Oemcomma
OemMinus
OemPeriod
Oem2
OemQuestion
Oem3
Oemtilde
Oem4
OemOpenBrackets
OemPipe
Oem5
OemCloseBrackets
Oem6
OemQuotes
Oem7
Oem8
Oem102
OemBackslash
ProcessKey
Packet
Attn
Crsel
Exsel
EraseEof
Play
Zoom
NoName
Pa1
OemClear
KeyCode
Shift
Control
Alt
Modifiers
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
LWin
RWin
Apps (Menu key)
Sleep
NumPad0
NumPad1
NumPad2
NumPad3
NumPad4
NumPad5
NumPad6
NumPad7
NumPad8
NumPad9
Multiply
Add
Separator
Subtract
Decimal
Divide
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
F13
F14
F15
F16
F17
F18
F19
F20
F21
F22
F23
F24
NumLock
Scroll
LShiftKey
RShiftKey
LControlKey
RControlKey
LMenu
RMenu
BrowserBack
BrowserForward
BrowserRefresh
BrowserStop

Thank you very much, @adijain! This is exactly what I was looking for!
Would be nice if this explanation can be added to the official documentation on Send Keys.

Thanks for this answer. I am struggling with using MS Word. I want to find and replace my text in a file. So the keyboard shortcut is Control+H

I entered a Send Keys of  {Control}(H)

 

It does not seem to work. I am generally finding word hard to work with. Id tried it with UI elements, but when you create a new file it seems to forget what the UI is. For example Save,or New just fail in new docs. Is keyboard shortcuts the way to go, and what am I doing wrong in my example above?

Hi @Pmorg73 ,

I've just tested Ctrl+H combination and it works fine. It seems that you forgot to add curve brackets around H, so your expression should be: {Control}({H}), where {Control} and {H} are keys you want to pass and () around {H} is used for passing 2 different keys simultaneously. 

To work with UI elements, that are not created at the moment of a flow start, I suggest you to use variables in path definition.  It should give you a new UI element that you can use later on.

@Serg24 I am trying to send 9x {Control}({Next}) in a row to an Excel spreadsheet that has just been opened via automation. This is to navigate through Excel sheet tabs, as I can't figure out how to do so otherwise. 

 

I am unable to get the keystrokes sent to the Excel spreadsheet however. How can I direct the keystrokes to the correct window? I can easily send text to certain cells in the spreadsheet, but apparently that action is not enough to designate the spreadsheet as the active window. 

 

EDIT: I figured it out, I used "Set Active Excel Worksheet" to designate the correct sheet tab. 

maximed
Frequent Visitor

Hello,

 

In Excel I would like to apply the key combination Crtl Alt F5 to update data from source file

I can't do it.

 

I try : {Control}({Alt}{F5})

Does anyone have a solution?

 

 

Thank

Max

 

Anonymous
Not applicable

I will show you an example, maybe this will help 

{F}{End}{Up:4}{Enter}{Right}{Home}{Down:7}{Enter}

See bold above for how to send the same key multiple times

Max, I had the same issue and did two things.  Ensure Send text as hardware keys is active.  And you need to use this as the text to send - Double nesting from the left one step at a time.   {Control}({Alt}({F5}))UIUICode for UI TextCode for UI Text

Hi. Just stumbled back on this thread and I have a situation where I can not get it to work. The process I am automating is to open a Power BI report, then hit Control P to print. There is no UI Element for this so need to use the keyboard send keys

 

Has anyone every tried to Control P in a software? It is just not doing it

{Control}{(P)}

Has told me there was no active application. I then tried to capture the window in the flow step, but it does not seem to work.

 

Any advice?

av00
Frequent Visitor

Thanks

Helpful resources

Announcements

Community will be READ ONLY July 16th, 5p PDT -July 22nd

Dear Community Members,   We'd like to let you know of an upcoming change to the community platform: starting July 16th, the platform will transition to a READ ONLY mode until July 22nd.   During this period, members will not be able to Kudo, Comment, or Reply to any posts.   On July 22nd, please be on the lookout for a message sent to the email address registered on your community profile. This email is crucial as it will contain your unique code and link to register for the new platform encompassing all of the communities.   What to Expect in the New Community: A more unified experience where all products, including Power Apps, Power Automate, Copilot Studio, and Power Pages, will be accessible from one community.Community Blogs that you can syndicate and link to for automatic updates. We appreciate your understanding and cooperation during this transition. Stay tuned for the exciting new features and a seamless community experience ahead!

Summer of Solutions | Week 4 Results | Winners will be posted on July 24th

We are excited to announce the Summer of Solutions Challenge!    This challenge is kicking off on Monday, June 17th and will run for (4) weeks.  The challenge is open to all Power Platform (Power Apps, Power Automate, Copilot Studio & Power Pages) community members. We invite you to participate in a quest to provide solutions to as many questions as you can. Answers can be provided in all the communities.    Entry Period: This Challenge will consist of four weekly Entry Periods as follows (each an “Entry Period”)   - 12:00 a.m. PT on June 17, 2024 – 11:59 p.m. PT on June 23, 2024 - 12:00 a.m. PT on June 24, 2024 – 11:59 p.m. PT on June 30, 2024 - 12:00 a.m. PT on July 1, 2024 – 11:59 p.m. PT on July 7, 2024 - 12:00 a.m. PT on July 8, 2024 – 11:59 p.m. PT on July 14, 2024   Entries will be eligible for the Entry Period in which they are received and will not carryover to subsequent weekly entry periods.  You must enter into each weekly Entry Period separately.   How to Enter: We invite you to participate in a quest to provide "Accepted Solutions" to as many questions as you can. Answers can be provided in all the communities. Users must provide a solution which can be an “Accepted Solution” in the Forums in all of the communities and there are no limits to the number of “Accepted Solutions” that a member can provide for entries in this challenge, but each entry must be substantially unique and different.    Winner Selection and Prizes: At the end of each week, we will list the top ten (10) Community users which will consist of: 5 Community Members & 5 Super Users and they will advance to the final drawing. We will post each week in the News & Announcements the top 10 Solution providers.  At the end of the challenge, we will add all of the top 10 weekly names and enter them into a random drawing.  Then we will randomly select ten (10) winners (5 Community Members & 5 Super Users) from among all eligible entrants received across all weekly Entry Periods to receive the prize listed below. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once overall. If they are drawn multiple times, another user will be drawn at random.  Individuals will be contacted before the announcement with the opportunity to claim or deny the prize.  Once all of the winners have been notified, we will post in the News & Announcements of each community with the list of winners.   Each winner will receive one (1) Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value). NOTE: Prize is for conference attendance only and any other costs such as airfare, lodging, transportation, and food are the sole responsibility of the winner. Tickets are not transferable to any other party or to next year’s event.   ** PLEASE SEE THE ATTACHED RULES for this CHALLENGE**   Week 1 Results: Congratulations to the Week 1 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Community MembersNumber SolutionsSuper UsersNumber Solutions Deenuji 9 @NathanAlvares24  17 @Anil_g  7 @ManishSolanki  13 @eetuRobo  5 @David_MA  10 @VishnuReddy1997  5 @SpongYe  9JhonatanOB19932 (tie) @Nived_Nambiar  8 @maltie  2 (tie)   @PA-Noob  2 (tie)   @LukeMcG  2 (tie)   @tgut03  2 (tie)       Week 2 Results: Congratulations to the Week 2 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 2: Community MembersSolutionsSuper UsersSolutionsPower Automate  @Deenuji  12@ManishSolanki 19 @Anil_g  10 @NathanAlvares24  17 @VishnuReddy1997  6 @Expiscornovus  10 @Tjan  5 @Nived_Nambiar  10 @eetuRobo  3 @SudeepGhatakNZ 8     Week 3 Results: Congratulations to the Week 3 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 3:Community MembersSolutionsSuper UsersSolutionsPower Automate Deenuji32ManishSolanki55VishnuReddy199724NathanAlvares2444Anil_g22SudeepGhatakNZ40eetuRobo18Nived_Nambiar28Tjan8David_MA22   Week 4 Results: Congratulations to the Week 4 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 4:Community MembersSolutionsSuper UsersSolutionsPower Automate Deenuji11FLMike31Sayan11ManishSolanki16VishnuReddy199710creativeopinion14Akshansh-Sharma3SudeepGhatakNZ7claudiovc2CFernandes5 misc2Nived_Nambiar5 Usernametwice232rzaneti5 eetuRobo2   Anil_g2   SharonS2  

Check Out | 2024 Release Wave 2 Plans for Microsoft Dynamics 365 and Microsoft Power Platform

On July 16, 2024, we published the 2024 release wave 2 plans for Microsoft Dynamics 365 and Microsoft Power Platform. These plans are a compilation of the new capabilities planned to be released between October 2024 to March 2025. This release introduces a wealth of new features designed to enhance customer understanding and improve overall user experience, showcasing our dedication to driving digital transformation for our customers and partners.    The upcoming wave is centered around utilizing advanced AI and Microsoft Copilot technologies to enhance user productivity and streamline operations across diverse business applications. These enhancements include intelligent automation, AI-powered insights, and immersive user experiences that are designed to break down barriers between data, insights, and individuals. Watch a summary of the release highlights.    Discover the latest features that empower organizations to operate more efficiently and adaptively. From AI-driven sales insights and customer service enhancements to predictive analytics in supply chain management and autonomous financial processes, the new capabilities enable businesses to proactively address challenges and capitalize on opportunities.    

Updates to Transitions in the Power Platform Communities

We're embarking on a journey to enhance your experience by transitioning to a new community platform. Our team has been diligently working to create a fresh community site, leveraging the very Dynamics 365 and Power Platform tools our community advocates for.  We started this journey with transitioning Copilot Studio forums and blogs in June. The move marks the beginning of a new chapter, and we're eager for you to be a part of it. The rest of the Power Platform product sites will be moving over this summer.   Stay tuned for more updates as we get closer to the launch. We can't wait to welcome you to our new community space, designed with you in mind. Let's connect, learn, and grow together.   Here's to new beginnings and endless possibilities!   If you have any questions, observations or concerns throughout this process please go to https://aka.ms/PPCommSupport.   To stay up to date on the latest details of this migration and other important Community updates subscribe to our News and Announcements forums: Copilot Studio, Power Apps, Power Automate, Power Pages

Users online (495)