Power Automate(WinAutomation)

SQL 액션 활용하여 엑셀 데이터 조작하기

효동쓰 2020. 8. 13. 13:59

안녕하세요.

효동쓰입니다.

[ MS Power Automate ]

오늘 준비한 주제는 SQL Connection 액션을 활용하여 엑셀 내의 데이터를 조작해보려고 합니다.

기존에 엑셀 액션을 사용하여 데이터를 조작하였더라면 이번엔 조금 더 심화된 방법으로 데이터를 조작해보겠습니다.

다음의 예제로 알아볼까요?

 

먼저 데이터가 들어있는 엑셀파일의 데이터는 어떤데이터로 구성되어있는지 확인해 보겠습니다.

1) Student Sheet

[ Kevin Sheet ]

2) Book Sheet

[ Book Sheet ]

다음으로 프로세스 디자이너에서 Set Variable 액션을 사용하여 데이터값이 들어있는 엑셀파일의 경로를 변수값으로 가지고있는 변수 %FullPath_ExcelFile%설정해두었습니다.

[ 사진 1 ]

계속해서 Open SQL Connection 액션을 찾은 후 속성값을 설정하는 창을 열겠습니다. 

[ 사진 2 ]

 

이때에 Action Input의 Connection String값에 아래와같이 적습니다. 
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=%FullPath_ExcelFile%;Extended Properties="Excel 12.0 Xml;HDR=YES";

이때 %FullPath_ExcelFile% 이 변수의 값은 위에서 설정한 데이터파일의 경로가 되겠습니다.

이렇게 연결을 시킨 뒤

 

Execute SQL Statement 액션을 사용하여 엑셀 파일 내 데이터를 SQL 쿼리문을 사용하여 결과값을 %QueryResult%라는 DataTable 타입의 변수에 담습니다. 

[ 사진 3 ]

변수값을 확인해보시면 아래 사진과 같이 데이터값이 정상적으로 들어간것을 볼 수 있습니다.

[ 사진 4 ]

그럼 조금 더 심화하여 Student 시트에서 Student ID가 1에 해당하는 Full Name의 데이터를 가지고오는 쿼리를 실행해보겠습니다.

[ 사진 5 ]

 실제로 결과가 잘 나왔는지 확인해볼까요?

[ 사진 6 ]

Mike H가 나왔네요. 정확한 값이죠?

 

그리고 이번엔 Insert문을 사용하여 Books 시트에서 데이터를 한줄을 삽입해보겠습니다.

쿼리는 다음과 같이 작성하여 진행하였습니다.

[ 사진 7 ]

결과값을 확인해보겠습니다.

[ 사진 8 ]

The Odyssey 컬럼의 값이 추가된걸 확인할 수 있습니다.

 

마지막으로 Update문을 사용한 예시를 확인해보겠습니다.

조건은 Student 시트에서 Student ID가 3인값의 Full Name을 'Leonardo N'로 업데이트 하는것이고 SQL문은 다음과 같습니다.

[ 사진 9 ]

결과값을 보시면 위의 쿼리의 결과가 잘 적용이된걸 확인할 수 있습니다.

[ 사진 10 ]

자 간단하게 SQL 액션을 사용할 수 있는 예제를 보여드렸는데요.

이와같이 엑셀을 굳이 열지않아도 엑셀데이터를 컨트롤 할 방법은 여러가지가 있습니다.

스크립트를 어떻게 짜느냐가 RPA 생산성에 큰영향을 미치겠죠?

 

그럼 다음번엔 더 유용한 내용으로 찾아오겠습니다.

읽어주셔서 감사합니다.