HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■14928 / inTopicNo.1)  経過日を知りたい
  
□投稿者/ キリマンジャロ -(2025/04/25(Fri) 10:52:05)
    WIN11、桐10S使用です
    いつもお世話になっております。
    今回、経過日を知りたく投稿させて頂きます。

    項目名  データ型  項目計算式

    日付   日時    #日時値

    開始日  日時

    完了日  日時

    経過日  数値    #日数( [始動日] , [日付] )

    を入れています。

    今は↓ですが
    日付    開始日  完了日  経過日

    25/4/25  25/4/20  25/4/24   5   


    ↓このようにしたいです

    日付    開始日  完了日  経過日

    25/4/25  25/4/20  25/4/24   4

    完了日が入るまで、開始日と日付の日数が経過日に入り、
    完了日が入れば優先して経過日に入れたいと考えております。
    お忙しいところ恐縮ですがよろしくお願いします。  

引用返信 [メール受信/OFF] 削除キー/
■14929 / inTopicNo.2)  Re[1]: 経過日を知りたい
□投稿者/ ONnoji -(2025/04/25(Fri) 15:51:15)
    2025/04/25(Fri) 17:48:20 編集(投稿者)

    No14928に返信(キリマンジャロさんの記事)
    > WIN11、桐10S使用です
    >
    > 項目名  データ型  項目計算式
    > 日付   日時    #日時値
    > 開始日  日時
    > 完了日  日時
    > 経過日  数値    #日数( [始動日] , [日付] )
    > を入れています。
    > 今は↓ですが
    > 日付    開始日  完了日  経過日
    > 25/4/25  25/4/20  25/4/24   5   

    まず、質問内容には [始動日] という項目は存在しませんから

    × #日数( [始動日] , [日付] )
    〇 #日数( [開始日] , [日付] )

    ですよね。

    ただし、もしもエラーにならないならば、 [始動日]という項目が本当に存在していて、気付いていない(または表示されていない)だけでしょうけれど・・・

    > ↓このようにしたいです
    > 日付    開始日  完了日  経過日
    > 25/4/25  25/4/20  25/4/24   4
    > 完了日が入るまで、開始日と日付の日数が経過日に入り、
    > 完了日が入れば優先して経過日に入れたいと考えております。

    項目番号 項目名  データ型  項目計算式
    1     日付   日時  #日時値
    2     開始日  日時  
    3     完了日  日時  
    4     経過日  数値  #日数( [開始日], [完了日] )

    これでOKでしょう。

    なお、添付画像を参考にして、[入力後再計算]のチェックを入れておくと便利です。

    グッドラック!(@^^)/~~~

    p.s.

    なお、計算項目は[訂正]で連続訂正した場合には、再計算されない場合があります。※常に再計算していると時間が掛かる為です。この点は表計算ソフトと違います
                                           ・・・・・・・・・・・・・・・・・・・・ ・・・・・・・・・・・・・・・

    だから、おかしいな?と思ったら、計算項目にカーソルを置いて、置換を選んでください。再計算しますか?というメッセージボックスが現れます。

    [編集]メニュー→[置換]→[再計算]でも行えます。

    エクセルのような表計算ソフトでは、入力の度に常に再計算するのが普通です。

    ちなみに、DOSの頃にはマシンが遅いので自動再計算をオフにする事も多かったようですが、
    ※Windowsマシンはキャッシュ・メモリを含めてマシン全体の速度が速く、そもそもオンメモリのソフトなので自動再計算はオンが普通です。

    しかし、桐では表ファイルの膨大なレコードを再計算するのは非効率なので、[訂正]で連続訂正した場合には、再計算しません。
        ・・・・・・・・・・・・・・・・・・・・・・・・・・・

    このように、桐とエクセルでは違いがあります。大事な事なので覚えておいてください。(ーー;)--------------> ※遠い目線
    ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

    特に桐の表ファイル(.tbx)のウィンドウと、エクセルのワークシートの画面がよく似ているので、同じ感覚になるかもしれませんけれども

    桐はデータベースソフトでエクセルは表計算ソフトなので、見た目だけで判断しないように気を付けてください。
    ・・・・・・・・・・・・・・・・・・・・・・・・・・ ・・・・・・・・・・・・・・・・・・・・・・・

引用返信 [メール受信/OFF] 削除キー/
■14930 / inTopicNo.3)  Re[2]: 経過日を知りたい
□投稿者/ うにん -(2025/04/27(Sun) 19:58:06)
http://kiri
    完了日が空欄の場合は、日付を使って計算したいのでは。
    #未定義値変換とか#条件選択を使えば...
引用返信 [メール受信/OFF] 削除キー/
■14932 / inTopicNo.4)  Re[3]: 経過日を知りたい
□投稿者/ ONnoji -(2025/04/28(Mon) 14:28:39)
    2025/04/28(Mon) 15:20:21 編集(投稿者)

    No14930に返信(うにんさんの記事)
    > 完了日が空欄の場合は、日付を使って計算したいのでは。
    > #未定義値変換とか#条件選択を使えば...

    うにんさん、ありがと。

    よく読んでみたら・・・

    > 完了日が入るまで、開始日と日付の日数が経過日に入り、
    > 完了日が入れば優先して経過日に入れたいと考えております。

    という条件だったのかぁ〜。(@_@)

    条件1 … [完了日]が未入力ならば、[日付]と[開始日]の間の日数を求める

    条件2 … そうでなければ、[開始日]と[完了日]の間の日数を求める

    ↑このように条件が複数ある場合には、

     #条件選択( 条件1,計算式,条件2,計算式 )

    を使います。

    具体的には、

     #条件選択1( [完了日] = #u, #日数( [日付], [開始日] ), 1, #日数( [開始日], [完了日] ) )

      または

     #cond( [完了日] = #u, #日数( [日付], [開始日] ), 1, #日数( [開始日], [完了日] ) )

    #cond は #条件選択の別名です。 #u は #未定義 の別名です。

    なお、条件1: [完了日] = #u はそのままの形ですが、条件2:そうでなければ は1(イチ)です。

    本来ならば、条件2は条件1の論理否定ですから、.not [完了日] = #u または [完了日] <> #u です。
    ・・・・・・・・・・・・・・・・・・

    しかし、桐では1(イチ)は恒真式を表す約束なので、「そうでなければ」は1(イチ)を使います。
    ・・・・・・・・・・・・・・・・・・・

    詳しくは、この掲示板の過去ログ

     または

    拙作webページ
     桐の釣魚大全のトップ > フォームアプリケーション教書 第2部 > 30 論理と条件式
     https://silicon7565.cloudfree.jp/guide/guide_Part2.htm#section30

    を参考にしてください。

    グッドラック。(@^^)/~~~

    p.s.

    実際に実行できないであろう #日数( [始動日] , [日付] ) にばかり気に取られて、前回は拙速な回答になってしまいました。

    例示に存在しない項目を使った、#日数( [始動日] , [日付] ) が無ければ、迷い道に入らなくて済んだのにね。トホホ。

引用返信 [メール受信/OFF] 削除キー/
■14933 / inTopicNo.5)  Re[4]: 経過日を知りたい
□投稿者/ ONnoji -(2025/04/28(Mon) 15:32:21)
    > 項目名  データ型  項目計算式
    > 日付   日時    #日時値

    そうそう、大事なことを・・・

    #表引き と同じく、項目計算式に #日時値 を使うのはチョットですよ。
    ・・・・・・・・

    なぜならば、再計算したらギャッとなっちゃうでしょ。
          ・・・・・・・・・・・・・・・・・・

    ここは、挿入初期値式 ですゾ!。v(^^)v

引用返信 [メール受信/OFF] 削除キー/
■14934 / inTopicNo.6)  Re[4]: 経過日を知りたい
□投稿者/ キリマンジャロ -(2025/04/28(Mon) 16:18:07)
    2025/04/28(Mon) 16:18:45 編集(投稿者)
    2025/04/28(Mon) 16:18:41 編集(投稿者)

    ONnojiさん、うにんさん質問へのご返信ありがとうございます。
    今確認させて頂きました。

    [始動日]という項目はなく[開始日]だけでした。
    うっかりしていました"(-""-)"
    すみません。

    >  #条件選択1( [完了日] = #u, #日数( [日付], [開始日] ), 1, #日数( [開始日], [完了日] ) )
    >
    >   または
    >
    >  #cond( [完了日] = #u, #日数( [日付], [開始日] ), 1, #日数( [開始日], [完了日] ) )
    >
    > #cond は #条件選択の別名です。 #u は #未定義 の別名です。

    こちらの条件選択でうまくいきました。
    いつもありがとうございます。

    >
    > なお、条件1: [完了日] = #u はそのままの形ですが、条件2:そうでなければ は1(イチ)です。
    >
    > 本来ならば、条件2は条件1の論理否定ですから、.not [完了日] = #u または [完了日] <> #u です。
    > ・・・・・・・・・・・・・・・・・・
    >
    > しかし、桐では1(イチ)は恒真式を表す約束なので、「そうでなければ」は1(イチ)を使います。
    > ・・・・・・・・・・・・・・・・・・・
    >
    > 詳しくは、この掲示板の過去ログ
    >
    >  または
    >
    > 拙作webページ
    >  桐の釣魚大全のトップ > フォームアプリケーション教書 第2部 > 30 論理と条件式
    >  https://silicon7565.cloudfree.jp/guide/guide_Part2.htm#section30
    >
    > を参考にしてください。
    >
    > グッドラック。(@^^)/~~~

    ゆっくりと拝見させて頂きます。勉強になりました。
    ありがとうございました。


解決済み!
引用返信 [メール受信/OFF] 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

Mode/  Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -