0
0

GhatGPTにVBAコードを作ってもらい勤怠管理表を作った

Posted at

お疲れさまです。沖縄の大手スーパーで店長をしております。
10月に新店舗を開店させるべく日々奮闘しております。
最近では、日々建設予定地に建物がたっていく様子を見てワクワクしております。
GhatGPTの便利さは常日頃から感じており、
社内向けの説明資料などの作成に活用しておりました。
先日、ChatGPTVBAコードが作成できることを知り早速試してみました。

従業員の勤怠管理が大変

店長業務の主な業務は下記の通りあります。

  • 採用活動
  • 新人教育
  • 営業活動計画
  • 勤怠管理
    主な業務の中でもっと時間を要する勤怠管理についてコメントしたいと思います。
    店舗規模によって働いている従業員数はそれぞれ異なっており、
    小規模店舗であれば50名程度
    大型店になると100名〜120名
    毎月勤務計画を毎月20日までに「リシテア」と呼ばれている勤怠管理システムに
    担当部署の責任者が人数分打ち込みを行います。
    私の担当している店舗の従業員は下記の通りであります。
    総人数     86名
    農産      6名
    水産      9名
    畜産      2名
    デリカ     20名
    グロッサリー  3名
    デイリーフーズ 3名
    早朝品出し   12名
    レジ      15名
    非食品     3名
    医薬品コーナー 5名
    薬剤士     3名
    調剤事務    5名
    日々上記の人数の勤務管理が必要となり、特に勤務開始の毎月21日に個人別勤務計画を確認する事がとても大変。
    当店は管理上21日が始業開始日で20日が終了となる (例)月度であれば7月21日~8月20となる
    勤務計画データをリシテアから取り出すと下記通りで必要以上に情報がある。
    勤務計画シート➀
    勤務計画シート➀.PNG
    勤務計画シート②
    勤務計画②.PNG
    上記のようなデータを毎月21日下記のデータを手作業で加工している。
    毎回20分程度の作業を繰り返し行うことで少しが早く加工できるがやっぱり面倒くさい。
    マクロで処理できればと思い本も買って勉強しようと思ったが内容が難しく手に負えない状況が続いていた。
    購入した教科書
    エクセルマクロ&VBA教科書.JPG

ChatGPTでVBAコードを作成する事に挑戦しました

作成時の感想
何度も失敗し諦めかけたが、
ChatGPTを信じ質問し続けることで最後は成功する事ができた。
質問にはすべて丁寧に答えてくれた。
作成して頂いたVBAを入力し、実行ボタンを押してイメージ通りに動いたときは
感動の涙であった。
気づいたら2時間経過していた。
ChatGPTがすごく身近なサポーターに感じた。是非皆さんも試して頂きたい。

使用したもの

「GhatGPT」https://chatgpt.com/
 Excel

参考にしたもの 

エクセルVBAマクロとは?できることを完璧に学ぶ初心者入門講座
【たった1動画で全てが分かるExcelVBAの教科書】 
 https://www.youtube.com/watch?v=949u36vdN7U
ChatGPTにマクロのコードを教えてもらったら、
6年間面倒だなと思っていたExcelの作業が3日で解消した
https://qiita.com/gushisushi/items/650bfc46fe0e1d3b452c

初のマクロ完成

成功までの流れ

1,VBAコード作成してほしいファイルをアップロードする
image.png
2,作成してほしい内容のプロンプトを打ち込む
image.png
3,返答がきた内容
image.png
4,VBAコードが作成されコピーしてコードに貼りつけ

Sub EditAndCopyData()
Dim ws As Worksheet
Dim newWs As Worksheet
Dim lastRow As Long
Dim dateColumn As String
Dim sourceSheetName As String
Dim destinationSheetName As String

' 元のシート名と転記先のシート名を設定
sourceSheetName = "Sheet1" ' 変更が必要な場合は適宜修正してください
destinationSheetName = "SortedData"

' 元のシートを設定
Set ws = ThisWorkbook.Sheets(sourceSheetName)

' 最終行を取得
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row

' D列、G列、H列、I列、J列、K列、L列、M列を削除
ws.Range("D:D,G:G,H:H,I:I,J:J,K:K,L:L,M:M").Delete

' 転記先のシートが存在する場合は削除
On Error Resume Next
Application.DisplayAlerts = False
ThisWorkbook.Sheets(destinationSheetName).Delete
Application.DisplayAlerts = True
On Error GoTo 0

' 新しいシートを作成
Set newWs = ThisWorkbook.Sheets.Add
newWs.Name = destinationSheetName

' データを新しいシートにコピー
ws.UsedRange.Copy Destination:=newWs.Range("A1")

' 日付列のインデックスを取得 (例: A列が日付列の場合は1)
dateColumn = 1

' データを日付順に並び替え
newWs.Sort.SortFields.Clear
newWs.Sort.SortFields.Add Key:=newWs.Cells(2, dateColumn), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With newWs.Sort
    .SetRange newWs.UsedRange
    .Header = xlYes
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
End With
End Sub

5,コードに作成して頂いたVBAを貼りつけ「実行(R)」を押す
image.png
6,マクロが動き下記のような指示が自動で実行される
 指示1 D列、G列、H列、I列、J列、K列、L列、M列は削除
 指示2 日付順に並び変え別のシートに転記する
7,見事成功!! やったぜ!!(実行後のエクセルシート)
image.png

苦労したこと

初めからイメージ通りのVBAコードができたわけではありません。
幾度となく失敗を繰り返してイメージ通りのVBAになりました。
最初のころは下記のようなエラーメッセージが頻繁に表示され怒りが増してきました。

image.png ⇐エラーメッセージ
しかし質問し続けました。こんなこと聞いていいのかと思いながらも諦めることなく質問し続けました。
質問1
image.png
質問2
image.png
質問3
image.png
質問4
image.png
質問攻めをしてもChatGPTは嫌がることなく丁寧に答えてくれました。
返信文の一例
image.png
そして嫌がることなく次のVBAを作成してくれました。素晴らしい!!
丁寧に手順も添えてくれてまるで先生のようでした
image.png
完成したとこは感動し涙がこぼれるほどうれしくなりました。
最後のコメントも素晴らしい
image.png

最後に

初めてChatGPTを活用してVBAを作成して頂きマクロを動かすことができました。
内容について初級程度のことかもしれませんが、ChatGPTを活用すると今まで以上に
短時間で多くの情報が得られ、イメージ通りの制作物ができました。
ChatGPTを使うことで、作成時間を短縮する事が可能となった。
VBAコードを制作するは、基礎知識を得なければ実行することはできない。
しかしながらChatGPTをすることで大幅な時間短縮になった。
今後、短縮された時間でさらに多くのVBAコードを作成し作業の効率化を図っていきたいと
考えます。
今後もチャレンジを続けより高度なマクロを構築したいと考えております。

MAKE・LINE Bot・スプレッドシートを活用して下記の事にチャレンジしたい!!
1,本日の出勤者の確認 
2,出勤時間・退勤時間の確認
3,個人別残業管理

最後まで読んでいただきありがとうございます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0