“
中級者向け実践:一般企業でのGAS自動化による年末調整準備(中規模企業向け)
年末調整の準備は、企業にとって重要な業務の一つですが、従業員数が多くなると、その作業は煩雑になり、時間もかかります。Google Apps Script(GAS)を使用することで、年末調整に関する様々な作業を自動化し、効率化することができます。この記事では、中規模企業(11-100人)を対象に、GASを活用した年末調整準備の自動化について、中級者向けに実践的な方法を解説します。
GASで年末調整を自動化するメリット
- 時間とコストの削減:手作業による入力やチェック作業を減らし、従業員の時間を有効活用できます。
- ミスの削減:自動化により、人的ミスを減らし、正確な年末調整処理を実現します。
- ペーパーレス化:年末調整に関する書類を電子化し、保管スペースの削減や検索性の向上に貢献します。
- 業務効率化:年末調整業務全体の効率が向上し、他の業務に集中できるようになります。
年末調整自動化のステップ
GASで年末調整を自動化するには、以下のステップで進めます。
- 要件定義:自動化する範囲や必要な機能を明確にします。
- データ収集:従業員情報をスプレッドシートにまとめます。
- GASスクリプト作成:年末調整に必要な処理をGASで記述します。
- テスト:作成したスクリプトをテストし、問題点があれば修正します。
- 運用:スクリプトを本番環境で実行し、定期的にメンテナンスを行います。
GASスクリプトの例:従業員情報の自動収集
まず、従業員情報をスプレッドシートから自動で収集するスクリプト例を示します。この例では、従業員番号、氏名、住所、給与などの情報を取得します。
function getEmployeeData() {
// スプレッドシートのIDとシート名を設定
const spreadsheetId = \"YOUR_SPREADSHEET_ID\";
const sheetName = \"従業員情報\";
// スプレッドシートを開く
const ss = SpreadsheetApp.openById(spreadsheetId);
const sheet = ss.getSheetByName(sheetName);
// データの範囲を取得 (A2から最終行まで)
const lastRow = sheet.getLastRow();
const range = sheet.getRange(\"A2:D\" + lastRow); // A列からD列までを例とする
// データを取得
const data = range.getValues();
// 取得したデータをログに出力 (デバッグ用)
Logger.log(data);
// 取得したデータを返す (必要に応じて)
return data;
}
解説:
YOUR_SPREADSHEET_ID
は、使用するスプレッドシートのIDに置き換えてください。スプレッドシートのURLから確認できます。従業員情報
は、従業員情報が記載されているシートの名前に置き換えてください。A2:D
は、データの範囲を示しています。従業員番号がA列、氏名がB列、住所がC列、給与がD列にある場合を想定しています。必要に応じて列を変更してください。Logger.log(data)
は、取得したデータをログに出力します。スクリプトエディタの「表示」→「ログ」で確認できます。
GASスクリプトの例:年末調整書類の自動生成
次に、収集した従業員情報をもとに、年末調整書類を自動生成するスクリプト例を示します。ここでは、源泉徴収票を例に、Googleドキュメントに情報を差し込む方法を紹介します。
function generateTaxWithholdingSlip(employeeData) {
// テンプレートドキュメントのIDを設定
const templateId = \"YOUR_TEMPLATE_DOCUMENT_ID\";
// 出力先フォルダのIDを設定
const outputFolderId = \"YOUR_OUTPUT_FOLDER_ID\";
// テンプレートドキュメントを開く
const templateDoc = DocumentApp.openById(templateId);
// テンプレートドキュメントをコピー
const newDoc = templateDoc.copy(employeeData[1] + \"_源泉徴収票\"); // employeeData[1]は氏名を想定
// コピーしたドキュメントをフォルダに移動
DriveApp.getFileById(newDoc.getId()).moveTo(DriveApp.getFolderById(outputFolderId));
// ドキュメント本文を取得
const body = newDoc.getBody();
// 従業員情報を差し込む(例)
body.replaceText(\"{{employeeNumber}}\", employeeData[0]); // employeeData[0]は従業員番号を想定
body.replaceText(\"{{employeeName}}\", employeeData[1]); // employeeData[1]は氏名を想定
body.replaceText(\"{{employeeAddress}}\", employeeData[2]); // employeeData[2]は住所を想定
body.replaceText(\"{{employeeSalary}}\", employeeData[3]); // employeeData[3]は給与を想定
// ドキュメントを保存して閉じる
newDoc.saveAndClose();
// ドキュメントのURLを返す
return newDoc.getUrl();
}
解説:
YOUR_TEMPLATE_DOCUMENT_ID
は、源泉徴収票のテンプレートとして使用するGoogleドキュメントのIDに置き換えてください。YOUR_OUTPUT_FOLDER_ID
は、生成した源泉徴収票を保存するGoogleドライブのフォルダIDに置き換えてください。{{employeeNumber}}
,{{employeeName}}
,{{employeeAddress}}
,{{employeeSalary}}
は、テンプレートドキュメントに差し込むプレースホルダーです。テンプレートドキュメントにあらかじめこれらのプレースホルダーを記述しておきます。employeeData[0]
,employeeData[1]
,employeeData[2]
,employeeData[3]
は、getEmployeeData()
関数で取得した従業員情報の配列の各要素に対応しています。
GASによる年末調整自動化の応用例
- 年末調整申告書の自動作成:従業員が入力した情報を元に、年末調整申告書を自動で作成します。
- 税額計算の自動化:収集した情報をもとに、所得税や住民税などの税額を自動で計算します。
- 電子申告連携:作成した年末調整データを、e-Taxなどの電子申告システムに連携します。
- 進捗管理:年末調整の進捗状況を可視化し、未提出者へのリマインドを自動化します。
まとめ
GASを活用することで、年末調整の準備作業を大幅に効率化できます。この記事で紹介したスクリプト例を参考に、自社の業務に合わせてカスタマイズし、年末調整業務の自動化に挑戦してみてください。特に中規模企業においては、GASの導入効果が大きく、従業員の負担軽減やコスト削減に貢献できます。
“