初心者がアプリ作成！？AppSheetを使ってスケジュール帳を作ってみた





こんにちは！3回目の投稿です。
今回は **AppSheet** を使って、自作のスケジュール帳アプリを作ってみました📅

よければ最後までお付き合いください！



## 📖 目次

1. [アナログのスケジュール帳って不便な点が多い](#アナログのスケジュール帳って不便な点が多い)
2. [意外と簡単にできるぞ！完成品と作成手順](#意外と簡単にできるぞ完成品と作成手順)
3. [フィードバックと今後の課題](#フィードバックと今後の課題)
4. [最後に](#最後に)



## アナログのスケジュール帳って不便な点が多い

みなさん、スケジュール帳って使っていますか？
私は社会人になってから使い始めたのですが、今ではなくてはならない存在です。

ただ、アナログのスケジュール帳ではこんな不便を感じています。

* 記入が大変（平らなスペースがないと文字が汚くなりがち…）
* 記入スペースに限界がある
* 月毎・日毎の切り替えが手間
* 常に持ち歩かないと予定が確認できない

私の場合、細かい予定が書ききれなかったり
うっかりスケジュール帳を家に忘れて
「今日何するんだっけ…？」と困った経験があります。



## 意外と簡単にできるぞ！完成品と作成手順

## 完成品はこちら


https://x.com/daikindayon/status/1924438299378426114



### 🔧 実装した機能

#### ✅ 優先度でアイコン色が変化

* 高：赤 
* 中：オレンジ
* 低：黄色

#### ✅ 毎日9時に自動でメール送信

AppSheetの **Automation機能** を使用しました。
（時間帯は自由に変更できます！）
※一部不具合があったため、修正中です・・・。



### 🛠 なぜAppSheetを選んだのか？

***とにかく作りやすい！*** これにつきます。

というのも、今回作成したAppSheet
**ほとんど自動で作成してもらっています。**

私が作成・編集したものはこれだけです。
　・元となるスプレッドシート
　・「開始時刻」「終了時刻」の選択肢
　・カレンダーのスケジュール表記を「タイトル+内容」に変更
　・優先度でアイコンが変化



そのため、知識がない方でも
AppSheetならスムーズにアプリ開発が可能です！

次項目にて、具体的な説明を記載します。

### 作成手順

#### 元となるスプレッドシート

![元シート](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4045820/8c2eeb18-ad38-4e67-b42b-0ec69d8d8a62.png)

最低限の項目だけでも十分アプリとして成り立ちます！

#### 表示画面（自動生成）

![表示画面](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4045820/1c60b9ea-d28b-4477-aaef-e85d484ba051.png)

最初から見た目もある程度整っていて驚きです…！

#### 「開始時刻」「終了時刻」の選択肢（30分刻み）
作成時点でのデータが自由入力だったため、30分刻みで選択できるように変更しました。

##### 手順
「開始時刻」の横にある🖋をクリック、以下のように変更を行います。
（赤枠が変更点です）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4045820/c98b96e5-8f5d-4f19-9559-23bd0c8a6155.png)

:::note info
【補足】
・「Type」を「Enum」とすることで選択肢から1つを表示することができます。
・「Base Type」を「Time」することで、「08：00：00」という文字列を
　　AppSheetが時刻と認識してくれます。
:::
  
・「Auto　Compute」の「Suggested　value」に以下の関数を入力します。
　（▶をクリックすると表示されます）
　<details><summary>そのままコピーして使用できます</summary>LIST(
  "08:00:00",
  "08:30:00",
  "09:00:00",
  "09:30:00",
  "10:00:00",
  "10:30:00",
  "11:00:00",
  "11:30:00",
  "12:00:00",
  "12:30:00",
  "13:00:00",
  "13:30:00",
  "14:00:00",
  "14:30:00",
  "15:00:00",
  "15:30:00",
  "16:00:00",
  "16:30:00",
  "17:00:00",
  "17:30:00",
  "18:00:00",
  "18:30:00",
  "19:00:00",
  "19:30:00",
  "20:00:00"
)
</details>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4045820/3fe05a6f-8716-40ac-aa5d-563017e59fe1.png)

これで時刻を30分刻みで選択できるようになります！

#### カレンダーのスケジュール表記を「タイトル+内容」に変更

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4045820/5b2ec81c-ea31-4f0c-9e9a-e5b79c554860.png)

作成した時点では「会議」（タイトル）だけの表示だったため
内容まで表示するよう変更してみました。

##### 手順
以下の行を追加します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4045820/77452626-a987-4a8b-ae7b-7f201bcef313.png)


・App　formulaには以下の関数を入力します。
　[]の内容を表示したい「NAME」にすることで何でも表示可能です。
<details><summary>そのままコピーして使用できます</summary>
[タイトル] & "：" & [内容]
</details>
・「Show？」のチェックは外します。

その後、画面左のスマホアイコンから「view」を選択
「Description」（赤枠の部分）を「タイトルと内容」に変更します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4045820/4de9dff4-de4e-49ce-acc7-b2be8df4f7be.png)

これで変更完了です！

#### 優先度でアイコンが変化

先ほどと同じ画面の一つ下の行「Category」を優先度に変更するだけです！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4045820/9776a12c-7354-40ad-967e-5ecc75a2ea75.png)

これで優先度ごとに色分けされるようになります！



## フィードバックと今後の課題

作ってみたアプリを自己満足で終わらせず、他の人にも使っていただきたい！
そこで、部署内にいるアナログのスケジュール帳を使用している方に
デジタルのスケジュール帳をオススメしてみました。

デジタルの利点として、**アプリだからいつでも確認・入力ができる**。
**しかも簡単です**！ということを紹介した上で使用していただきました。


### 💬 使ってみた感想

**Aさん（頼れる先輩）**

> **入力が簡単だね**

**Bさん（優秀な後輩）**

> **自分でアプリが作れるのがすごいです**

**Cさん（部長）**

>**複数のスケジュールが一目でわかるのがとても良い**

と**お褒めの言葉をいただきました**。

また、3名に聞いたところ
紙のスケジュール帳は不便という意見をいただきました。

特に部長はアナログのスケジュール帳に予定がギッシリだったため
デジタルのスケジュール帳は大変好評でした。

しかし、褒められるだけで終わりというのはもったいないので
**「もっとこうしてほしい！ということはありますか？」**
と聞き、改善案をいただきました。



### 🔁 改善案・今後の課題

**Aさん**

> **自分だけでなく、他人のスケジュールも見られるようにしてほしいな。**

**Bさん**

> **Google Meetと連携して、予定が自動反映されるといいかも！**

**Cさん**

> **優先度別・プロジェクト単位での表示機能があるとさらに便利。**

と様々な視点の改善案をいただきました。
これは是非今後の課題にしていきたいですね！


### 🔍 検討中の対応案
いただいた意見を参考に対応案を考えてみました。

| いただいた意見 | 検討中の対応案|
|:-|:-|
| 部内・部外でｽｹｼﾞｭｰﾙの共有　 　　　 |  個人・ﾁｰﾑや部署ごとのｼｰﾄを作成することで可能そう |
| WEB会議のURLが自動反映  | 個人・ﾁｰﾑや部署ごとのｼｰﾄを作成することで可能そう　　　　　  |
|  ﾌﾟﾛｼﾞｪｸﾄや優先度ごと表示　　　 |  ﾌﾟﾛｼﾞｪｸﾄや優先度ごとの予定一覧を別シートに作成　　　　 |



 進展があり次第、また記事にしようと思います！


## 最後に


既存のスケジュール帳アプリ（TimetreeやGoogleカレンダー）には
**機能が充実している**という強みがありますが
今回のように、作成したアプリは
**使用者が使いやすいように機能の追加・削除ができる**という強みがあります。

部署内や会社全体が使いやすいようなアプリ開発を目標に
    これからも制作・改善していきます！



何か質問・感想があれば、ぜひコメントお願いします！
最後までありがとうございました！



###  関連リンク

* [AppSheet 公式サイト](https://www.appsheet.com/)
* [Google スプレッドシート](https://www.google.com/sheets/about/)



## 追記
スケジュール帳アプリの「**Googleカレンダー**」について
何ができるのかを検証してみました。その結果・・・

**私が追加した機能はすべてGoogleカレンダーでもできる！**

という恐ろしい結果となりました。
加えて上位互換という始末です・・・。

具体的には以下の通りです。

| 私が作成したカレンダー | Googleカレンダー|
|:-|:-|
| カレンダーを月・週・日ごと表示　　　　 |  年・月・週・日・ 3日（設定可能）ごと表示　
|30分刻みで時間選択可能   | 15分刻み　入力することも可能　　　　　  |
| 共有する機能なし |  共有する相手を自由に選択可能 |
| 当日のお知らせをメールだけ |  メール・通知・リマインダー可能 |

さらにGoogleカレンダーにはこんな機能もあります。

　・**GoogleMeetのURL添付+資料のPDF添付が可能**
　・**TODOリストの作成、タスクごとの可視化が可能**
　・**月単位、年単位の予定は繰り返し登録ができる。**

など、様々な便利機能があります。

これは、**自作アプリを改良するよりもGoogleカレンダーを活用する方が良いのでは？**
となるレベルですね。

自分で使いやすいように改良できる自作アプリも悪くはないですが
既に高機能なアプリがあるのであれば、それを使いこなすことも大切ですね。

**自分でアプリを作ることができた！という経験は財産である！**、と言い聞かせて
本記事を終わろうと思います。
（さすが天下のGoogle様、一般人では到底敵いませんでした・・・）

ありがとうございました！