問題タブ [nested-if]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1480 参照

excel - Excel 2010: ネストされた IF ステートメント

作業中のドキュメントのネストされた IF の作成に取り組んできましたが、両方とも機能するがマージする必要がある 2 つの異なる IF ステートメントを作成することができました。

関連する情報は次のとおりです。

現在の 2 つの IF は次のとおりです。

この If ステートメントは、最初に End 列が満たされているかどうかを確認し、満たされている場合はプロジェクトが完了し、列 L に表示できます。次に、cilumn J で開始 (日付) を取得し、10 稼働日を追加してから、これを比較しますプロジェクトが期限切れかオンタイムかを確認するには、今日の日付まで。

この IF ステートメントは、Cloud 列 (N) に Yes があるかどうかを確認し、ある場合は開始日に 20 営業日を追加し、それを今日の日付と比較して、プロジェクトが期限切れか時間通りかを確認します。

したがって、私が探しているのはこれら2つの組み合わせですが、多くの引数に対して常にエラーまたはメッセージが表示されます。

必要なことは次のとおりです。1) 列 L が設定されている場合は終了日を確認します。2) クラウド列に「はい」がある場合は、開始日に 20 営業日を追加して比較します。 3) クラウド列が空の場合は、開始日に 10 営業日を追加してから、今日の日付と比較し、列 L を期限切れまたはオンタイムに設定します。

どんな助けでも素晴らしいでしょう!!!

0 投票する
1 に答える
1863 参照

c - C - 従業員の給与に対する Switch ステートメントと If ステートメントの比較

私は C で従業員の給与プログラムに取り組んでおり、時給労働者の給与を計算するためのコードを整理するより良い方法を見つけようとしています。if ステートメントを大量に使用する代わりに、switch ステートメントを使用したいと考えています。私はそれが可能かどうか疑問に思っていましたか?ケースには値が必要ですか、それとも空白のままにできますか? たとえば、 「 case value1 : 」の代わりに「case :」だけを使用できますか? switch ステートメントを使用する場合、おそらく if を使用して、ユーザーが入力したものが有効であることを検証する必要があることを知っています。それとも、たくさんの if に固執する必要がありますか?

ご不明な点がある場合は、次の手順に従う必要があります。

  1. 会社は従業員に次のように支払います。 a) 固定の週給を受け取るマネージャー。b) 時間給労働者。最初の 40 時間までは固定の時給を受け取り、「1.5 時間」、つまり残業時間については時給の 1.5 倍を受け取ります。c) 250 ドルと毎週の売り上げの 5.7% を受け取る委託労働者。または d) 出来高払い労働者。生産された品目ごとに、品目ごとに固定額を受け取ります。

各従業員の週給を計算するプログラムを作成します。従業員数は事前にわかりません。各従業員タイプには、独自の給与コードがあります。

マネージャーの場合は 1
、時給労働者の場合は 2
、委託労働者の場合は 3 、出来高労働者
の場合は 4 です。

各ペイコード タイプを処理する個別の関数を記述します。スイッチを使用して、従業員のペイコードに基づいて各従業員の給与を計算します。スイッチ内で、プログラムが従業員の給与コードに基づいて各従業員の給与を計算するために必要な適切な事実を入力するようにユーザーに促します。
合理性チェックを適切に追加します (例: 給与 0 ~ 100000、労働時間 0 ~ 84、時給 0 ~ 250、週間売上 0 ~ 1000000、個数 1 ~ 1000、1 個あたりの賃金 0.01 ~ 1000) . 定数を使用します)。

プログラム定数は次のとおりです。

Hourly Worker関数のこれまでのコードは次のとおりです。

私が尋ねている理由は、これに検証を追加したいからです。ユーザーが 0 ~ 84 以外の数字を入力すると、「入力が無効です。0 ~ 84 の数字を入力してください」のようなメッセージが表示されます。また、ユーザーが 0 から 250 の間ではない時給を入力すると、「入力が無効です。0 から 250 の間の数値を入力してください」のような検証を追加したいと考えています。誰も混乱させなかったことを願っています。私はおそらくいくつかの間違いを犯しました。私は C プログラミングに非常に慣れていないことを指摘しておく必要があります。

編集済み

if ステートメントを次のように編集しました。

それは正しいですか、それは機能しますか?

0 投票する
1 に答える
845 参照

vba - VBA で MAX IF 式を記述して 2 つの値のルックアップを実現する方法

配列数式を使用して、列 Y にあるリソース名エントリを検索し、列 B でプロジェクト名を検索し、MAX 関数を使用して列 AE で最新/最高の日付値を返します。

これは率直に言えば、スプレッドシート内のデータのサイズが非常に大きいため (60,000 行)、スプレッドシートを殺してしまいます。式は次のとおりです。

下の表を見ると、両方ともプロジェクトに取り組んでいる21/04/2014Richard と Fred の数式が返されます。21/06/2014Capitol

同じ結果を得るために VBA でこの数式を書き直して、より効率的なメモリで実行する方法があるかどうか疑問に思っています。私はVBAの初心者ですが、ゆっくりと学習しています。

0 投票する
1 に答える
133 参照

excel - Excel Error Handling - Lookup and Return Employee ID

Request:
Please assist w\ formula logic to provide error handling and Vlookup functionality across two possible columns (within table array) and return employee ID (third column in array).

Goal:
Create an auto-populating attendance tracker that looks up the inputted phone number and returns their employee ID on an embedded "Roster" worksheet. Also, I am trying to give functionality for vlooking up across two phone numbers.

"Attendance Tracker" worksheet Table Layout: (emphasis in italics)
DATE | TIME | CALLER ID | TYPE | REASON | DETAILS | EMPLOYEE # | ETC...

  • Caller ID = Column D
  • Employee # = Column I

"Roster" worksheet table-array for VLOOKUP

  • Column H = "Contact Primary"
  • Column I = "Contact Secondary"
  • Column J = "Employee Number"

Primary Formula(s)

  • "First"=VLOOKUP(D2,Roster!H:J,3,0) <--- Looks up emp number against "Contact Primary"
  • "Second"=VLOOKUP(D2,Roster!H:J,2,0) <--- Looks up emp number against "Contact Secondary"

My Attempt
=IF(D2="","",IF(ISERROR(IF(ISERROR(VLOOKUP(First)),VLOOKUP(Second),VLOOKUP(First))),"Add # to Roster",VLOOKUP(FIRST))))

MY RESULTS
"Caller ID" left blank - Perfect! Top level if-statement fixes blanks.
"Caller ID" exists in "Contact Primary" Column - Perfect! Value Returns.
"Caller ID" exists in "Contact Secondary" Column - Oh No! "Add # to Roster" returns.
"Caller ID" DOES NOT exist in either "Contact Primary/Secondary" - Oh No! "Add # to Roster" returns.

I hope I explained that well enough. And thank you so much in advance if you are able to assist!

0 投票する
3 に答える
716 参照

c# - ネストされた if else 条件を単純化する

if else 条件をネストしました。私が望むチェックの流れは、以下のコードで説明されています。

チェックの流れをそのままにして、チェック回数を減らす方法。

0 投票する
1 に答える
759 参照

c - C 無限ループ (FOR LOOP でネストされた IF)

ユーザーに値を要求する関数を作成しようとしています。値は、入力された最大値または最小値として保存されます。または、ユーザーが数値 < 0 を入力した場合、dataentry() 関数を終了します。ユーザーに入力を求め続けます。

プログラムが最初にデータを入力するように求めた後、for ループに到達する前に、プログラムが機能し、値を入力します。ただし、「データ値を入力してください:」を何度も印刷する無限ループに入ります。最大値、最小値、データ値、およびカウント値を出力する printf ステートメントを使用して、それらが保存されていることを確認できるようにしましたが、関数が for ループに到達すると、しようとしていることを実行しなくなりました行う。前もって感謝します。この関数は、私が書いているより大きなプログラムの一部ですが、関係のないものはすべて切り取っています。

0 投票する
1 に答える
1170 参照

if-statement - IF ステートメントのヘルプ、トリプル ネスト

セルC47の値が0 以下の場合、値 0を返そうとしていますが、セル E9 の負の値が返され続けます。式の他のすべての計算はうまく機能します。何が間違っているのかわかりません。ネストされた IF ステートメントは初めてです。

すべてのヘルプは大歓迎です。ありがとうございました。