Google Sheets를 사용하면 정의한 특정 UI 상호작용 시리즈를 복제하는 매크로를 녹화할 수 있습니다. 매크로를 녹음한 후 Ctrl+Alt+Shift+Number
형식의 단축키에 매크로를 연결할 수 있습니다. 이 바로가기를 사용하면 일반적으로 다른 위치 또는 다른 데이터에서 정확한 매크로 단계를 다시 빠르게 실행할 수 있습니다.
Google Sheets 확장 프로그램
> 매크로 메뉴에서도 매크로를 활성화할 수 있습니다.
매크로를 기록하면 Google Sheets에서 매크로 단계를 복제하는 Apps Script 함수 (매크로 함수)를 자동으로 만듭니다. 매크로 함수는 시트에 연결된 Apps Script 프로젝트의 macros.gs
파일에 추가됩니다. 해당 이름으로 시트에 이미 바인딩된 프로젝트 파일이 있는 경우 매크로 함수가 추가됩니다. 또한 Google Sheets는 스크립트 프로젝트 manifest를 자동으로 업데이트하여 매크로에 할당된 이름과 단축키를 기록합니다.
기록된 모든 매크로는 Apps Script 내에서 완전히 정의되므로 Apps Script 편집기 내에서 직접 수정할 수 있습니다. Apps Script에서 매크로를 처음부터 작성하거나 이미 작성한 함수를 매크로로 변환할 수도 있습니다.
Apps Script에서 매크로 만들기
Apps Script로 작성된 함수를 가져와 매크로 함수로 사용할 수 있습니다. 이를 수행하는 가장 쉬운 방법은 Google Sheets 편집기에서 기존 함수를 가져오는 것입니다.
또는 다음 단계에 따라 Apps Script 편집기 내에서 매크로를 만들 수 있습니다.
- Google Sheets UI에서 확장 프로그램 > Apps Script를 선택하여 Apps Script 편집기에서 시트에 바인딩된 스크립트를 엽니다.
- 매크로 함수를 작성합니다. 매크로 함수는 인수를 사용하지 않고 값을 반환하지 않아야 합니다.
- 스크립트 매니페스트를 수정하여 매크로를 만들고 매크로 함수에 연결합니다. 고유한 단축키와 이름을 할당합니다.
- 스크립트 프로젝트를 저장합니다. 그러면 매크로를 시트에서 사용할 수 있습니다.
- 시트에서 매크로 함수를 테스트하여 의도한 대로 작동하는지 확인합니다.
매크로 수정
시트에 첨부된 매크로는 다음과 같이 수정할 수 있습니다.
- Google Sheets UI에서 확장 프로그램 > 매크로 > 매크로 관리를 선택합니다.
- 수정할 매크로를 찾아 > 매크로 수정을 선택합니다. 이렇게 하면 매크로 함수가 포함된 프로젝트 파일로 Apps Script 편집기가 열립니다.
- 매크로 동작을 변경하려면 매크로 함수를 수정합니다.
- 스크립트 프로젝트를 저장합니다. 그러면 매크로를 시트에서 사용할 수 있습니다.
- 시트에서 매크로 함수를 테스트하여 의도한 대로 작동하는지 확인합니다.
함수를 매크로로 가져오기
시트에 이미 바인딩된 스크립트가 있는 경우 스크립트의 함수를 새 매크로로 import 다음 단축키를 할당할 수 있습니다. 이렇게 하려면 매니페스트 파일을 수정하고 sheets.macros[]
속성에 다른 요소를 추가하면 됩니다.
또는 다음 단계에 따라 Sheets UI에서 함수를 매크로로 가져올 수 있습니다.
- Google Sheets UI에서 확장 프로그램 > 매크로 > 가져오기를 선택합니다.
- 표시된 목록에서 함수를 선택한 다음 함수 추가를 클릭합니다.
- 를 선택하여 대화상자를 닫습니다.
- 확장 프로그램 > 매크로 > 매크로 관리를 선택합니다.
- 목록에서 방금 가져온 함수를 찾습니다. 매크로에 고유한 단축키를 할당합니다. 여기에서 매크로 이름을 변경할 수도 있습니다. 이름은 기본적으로 함수의 이름으로 설정됩니다.
- 업데이트를 클릭하여 매크로 구성을 저장합니다.
매크로의 매니페스트 구조
다음 매니페스트 파일 예시 스니펫은 Google Sheets 매크로를 정의하는 manifest의 섹션을 보여줍니다.
매니페스트의 sheets
섹션은 매크로에 할당된 이름과 단축키, 매크로 함수의 이름을 정의합니다.
{
...
"sheets": {
"macros": [{
"menuName": "QuickRowSum",
"functionName": "calculateRowSum",
"defaultShortcut": "Ctrl+Alt+Shift+1"
}, {
"menuName": "Headerfy",
"functionName": "updateToHeaderStyle",
"defaultShortcut": "Ctrl+Alt+Shift+2"
}]
}
}
Sheets 매크로 매니페스트가 생성되는 방법에 관한 자세한 내용은 스프레드시트 매크로 매니페스트 리소스를 참고하세요.
권장사항
Apps Script에서 매크로를 만들거나 관리할 때는 다음 가이드라인을 따르는 것이 좋습니다.
- 매크로는 가벼울 때 성능이 더 뛰어납니다. 가능하면 매크로가 실행하는 작업 수를 제한합니다.
- 매크로는 구성이 거의 또는 전혀 없이 자주 반복해야 하는 루틴 작업에 가장 적합합니다. 다른 작업의 경우 맞춤 메뉴 항목을 사용하는 것이 좋습니다.
- 매크로 키보드 단축키는 고유해야 하며, 주어진 시트에는 한 번에 단축키가 있는 매크로가 10개만 있을 수 있습니다. 추가 매크로는 확장 프로그램 > 매크로 메뉴에서만 실행할 수 있습니다.
- 단일 셀을 변경하는 매크로는 먼저 전체 범위를 선택한 다음 매크로를 활성화하여 여러 셀에 적용할 수 있습니다. 즉, 사전 정의된 셀 범위에서 동일한 연산을 복제하는 매크로를 만들 필요가 없는 경우가 많습니다.
할 수 없는 작업
매크로로 할 수 있는 작업에는 몇 가지 제한사항이 있습니다.
바인딩된 스크립트 외부에서 매크로 사용
매크로는 특정 Google Sheets에 연결된 스크립트에 정의됩니다. 매크로 정의는 독립형 스크립트나 웹 앱에서 정의된 경우 무시됩니다.
Sheets 부가기능에서 매크로 정의하기
Sheets 부가기능을 사용하여 매크로 정의를 배포할 수는 없습니다. Sheets 부가기능 프로젝트의 모든 매크로 정의는 해당 부가기능의 사용자에 의해 무시됩니다.
스크립트 라이브러리에서 매크로 배포
Apps Script 라이브러리를 사용하여 매크로 정의를 배포할 수는 없습니다.
Google Sheets 외부에서 매크로 사용하기
매크로는 Google Sheets의 기능일 뿐이며 Google Docs, Forms, Slides에는 없습니다.