이번 시간에는 Copy/Paste Range activity를 python 코드로 구현해보는 시간을 가져보자.
(uipath Copy/Paste Range activity 알아보기)
def copy_paste_range(file_name1: str, sheet_name1: [str, int], file_name2: str, sheet_name2: [str, int],
r_range: str = None, w_range: str = None, header_y_n: bool = True, only_data: bool = True,
change: bool = False):
if change:
df = read_range(file_name1, sheet_name1, r_range, False, only_data)
df = df.transpose()
write_range(file_name2, df, sheet_name2, w_range, False)
else:
df = read_range(file_name1, sheet_name1, r_range, header_y_n, only_data)
write_range(file_name2, df, sheet_name2, w_range, header_y_n)
def copy_paste_range(file_name1: str, sheet_name1: [str, int], file_name2: str, sheet_name2: [str, int],
r_range: str = None, w_range: str = None, header_y_n: bool = True, only_data: bool = True,
change: bool = False):
df = read_range(file_name1, sheet_name1, r_range, header_y_n, only_data)
read_range 함수를 이용하여 원하는 범위(or 시트)값을 읽어 데이터 프레임 형식 df를 가져온다.(read_range 함수란?)
only_data의 값에 따라 수식을 가져 올 것인지 값만 가져올 것인지 선택 할 수 있다.
write_range(file_name2, df, sheet_name2, w_range, header_y_n)
2-2에서 복사한 데이터프레임, df를 write_range 함수를 이용하여 원하는 범위에 붙여넣기한다.(write_range 함수란?)
여담
uipath의 경우 바꾸기 기능을 지원하였다. 따라서 해당 기능도 똑같이 지원한기 위해 change라는 값을 넣게 되었다.
해당 값이 True이면 바꾸기 기능을 지원한다.if change: df = read_range(file_name1, sheet_name1, r_range, False, only_data) df = df.transpose() write_range(file_name2, df, sheet_name2, w_range, False)