Excelをデータソースにしたアプリに列を追加する
「お買い物メモアプリ」作りの続きです。前回「内容」と「金額」が登録出来るアプリを作りましたが、これに「買い物をしたのがいつか」がわかるよう、日付も登録出来るようにしてみたいと思います。
1.Excelテーブルに列を追加する
OneDrive に保存しているアプリ用のExcelテーブル「Memo」を広げます。今回は列「Price」の後ろに新しい列を追加します。右クリックでメニューを出して、「列の挿入」を選択します。
新しい「列1」が作成されますので、列の名前を「Date」にしておきます。書式は日付に設定します。
2.Power Apps アプリの一覧表に日付を表示する
追加した列がアプリ側にも反映されるよう、データの更新をします。画面左の「データ」から「Memo」を選択して、「最新の情報に更新」を選択します。
画面には「挿入」から「テキストラベル」を選択して、プロパティ「Text」の内容を「ThisItem.Date」と修正します。
設定が正しく行われていれば、新しく追加した「Date」列の値が表示されて
いるはずです。ですが、よくみるとアプリ側は時間まで表示されていますね。これを日付のみに修正したい場合はText関数で書式を修正します。
3.日付の書式を整える
Text関数を使えば、書式を指定してテキスト形式に変換してくれます。
Tex関数はこのように書きます。
Text(変換するデータ,"書式")
今回は日付だけにしたいので、書式のところを"yyyy/mm/dd"としています。
"yyyy年mm月dd日"という書式にすることも出来ます。
書式についてもっと詳しく知りたい方はこちらの公式サイトのドキュメントを
参考にしてみてください。
4.登録画面に日付選択の入力フォームを追加する
最期に、日付も入力出来るよう登録画面を修正します。「挿入」から「日付の選択」を選択して画面に置きます。日付選択のコントロールを使用すると、カレンダーから日付登録が出来るようになります。なお、初期表示として、当日の日付がセットされるようになっています。「日付」のテキストラベルも追加しておきます。
5.保存ボタンのアクションを修正する
日付のコントロール名は「DatePicker1」という名前になっているはずです。保存ボタンを押した時に、この「DatePicker1」で選択した日付がセットされるようにするには「DatePicker1」の後に「.SelectedDate」と記述します。今回「保存」ボタンには下図のように追加しています。
これで、日付の登録も出来るようになっているはずです。
実際にアプリを動かし、Excelを見てみるとDate列には時間まで登録されているのがわかると思います。実際に登録をした時間とはずれているようですが、クラウド側はUTC(世界共通の標準時)で日時を管理しているためだと思われます。Power Apps アプリではタイムゾーンを日本に合わせていますので、プラス9時間された日時で表示されます。