ファイルメーカー

エクセルを使わないでFileMakerで日付表を自動作成するスクリプト

投稿日:2018年12月7日 更新日:

勤務表もFileMakerで作っていますが、今までエクセルで1年分の勤務表データを作成後FileMakerにインポートする形をとっていました。使用しているPCがWindows10 64bitになり32bit版のエクセルが使えなくなりました。もちろん他の表計算ソフトを使えばできるのですが、今回はFileMakerで1年分の勤務表データを自動作成するスクリプトを作ってみました。Loopコマンドを使えば簡単にスクリプトを作ることができます。

スプレッドシートによるデータ作成

以下はGoogleスプレッドシートを使ったデータのインポート方法です

一番上の行に

  • 日付
  • 勤務地
  • 職種
  • 職種別優先順位

日付は2019/1/1~2019/12/31を連続データ入力
勤務地、職種、職種別優先順位をコピペ入力
これをFileMakerでインポート

この方法の欠点は勤務地が複数あったり職員が多い場合は同じことを何回か繰り返す必要があり手間がかかることです

FileMakerによる自動作成

FileMakerでのフィールド作成

入力したいフィールド名は

  • 日付
  • 勤務地
  • 職種
  • 職種別優先順位

の4つだけ

他のフィールド名は先頭にgがついていてグローバルフィールドで、すべてのデータに反映されるフィールド
あらかじめ入力したいデータをいれておき、それをコピーするために使います

  • g自動入力年
  • g勤務地
  • g職種
  • g職種別優先順位
  • g自動入力年の年間日数
    =If ( Day ( Date ( 3 ; 0 ; g自動入力年 ) ) = 28 ; 365 ; 366 )
    ・・・g自動入力年3月0日は何日か?
    →28なら閏年ではないので365
    →それ以外なら29なので閏年となり366

FileMakerでの自動作成スクリプト

下は完成したスクリプト

Loopのカウンター用に変数[$count]を設定
変数とは一時的なデータ格納庫で、変数名の前に$をつける
変数$countの初期値を0に設定

右の丸い歯車をクリックして設定
>値を0に設定

一括入力する年の日付設定

2019年なら初期値は2019/1/1

今回は自動入力年の初日を変数$dayに格納

フィールド[自動入力年の初日] =Date ( 1 ; 1 ; g自動入力年 )

自動入力年が365日か366日になるかを場合分けするために

フィールド[g自動入力年の年間日数] =If(day(date(3,0,g自動入力年))=28;365;366)の値により何回Loopさせるか自動的に決定される

Loopに入ったところで$countを1増やしておく。初期値は0なので1回目のLoopでカウンターは1からスタート

フィールド設定でコピーするフィールドを設定しておく

  • 勤務地←g勤務地からコピー
  • 職種←g職種からコピー
  • 職種別優先順位←g職種別優先順位からコピー

最後に日付を次の日付にしておく
$dayを$day+1にするだけ

レイアウト作成

自動作成レイアウト

ボタンを押すだけでデータを自動作成するためのレイアウトを作っておく。

左に

  • g自動入力年→2019を入力
  • g勤務地→浦和を入力
  • g職種→医師
  • g職種別優先順位→1

真ん中に自動作成するためのボタンを作り、作ったスクリプトを指定

右にデータが入力されたかどうか確認するためのフィールドを配置

  • 日付
  • 勤務地
  • 職種
  • 職種別優先順位

ボタンを押すと1年分のデータが作成されますが、このレイアウトだと365日分のデータが作成されたかどうか一目でわかりません。そのため新たに表形式レイアウトを作成して確認します

表レイアウト

スクリプト実行

自動作成スクリプトボタンを押すと

右側にデータが作成されているが、すべてのデータが作成されているかどうかわからない

表レイアウトに切り替えると365日分の全データが作成されているのが確認できました

-ファイルメーカー

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

FileMaker Pro17のインストール

FileMaker Proの新バージョンは17になりました。最近は短期間でバージョンアップが繰り返されています。ボリュームライセンス契約をしているので、FileMaker Pro 17は全て「File …

FileMakerでposition関数の使い方

ファイルメーカーではExcelのようにテキスト関数を使うことができます。簡単な例として、メールアドレスのドメイン名(@以下)のみ別フィールドで取得してみましょう。 目次1 メールのドメイン名を自動で抽 …

FileMaker Proで動画管理

データーベースを使わないで動画管理をするには、ファイル名で内容がわかるようにするくらいしか方法がありません。シリーズドラマならシーズンごとにフォルダを作成して、その中に第一話から順番に並ぶようにファイ …

FileMaker Pro14で「.fmp12」ファイルの共有設定

.fp5→.fp7→.fmp12までファイル変換ができたわけですが、共有設定の方法も変更されています。ファイルメーカーではサーバーを使わなくてもファイルを共有可能です。最終的にはファイルメーカーSer …

FileMaker Go 15を導入してみた

FileMaker Go はiPad やiPhone で実行できる無料アプリケーションで、どこからでもFileMakerデータに接続できるようになります。Filemaker Pro11から提供されるよ …

2019年2月
« 12月    
 123
45678910
11121314151617
18192021222324
25262728  
Top