• ベストアンサー

ファイルメーカー6のif関数について

ファイルメーカー6、MacOS9.2を使ってる初心者です。 ファイルメーカーの事で前も教えて頂きましたが、またお願いします。 商品名、数量、単価、合計という4つのフィールドがあります。 合計フィールドは数量フィールド×単価フィールドという計算式で出していて これ自体は問題ないんですが、 商品名を値一覧から(約10品名)選び、選んだ品名から自動で 単価を入れたいんですがやり方が分かりません。 例えば商品名にみかんを選んだ場合は単価に50を、 リンゴを選んだら70を バナナを選んだ90を・・・・ こんな感じで10品目分を設定したいんですが出来ません。 ひとつだけならif関数で出来たんですが・・・ もちろん、設定が出来るならif関数じゃなくても良いんです。 よろしくお願いいたします。

noname#61024
noname#61024

質問者が選んだベストアンサー

  • ベストアンサー
  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.8

そうそう、FM6では相手先&商品名という計算フィールドを作って、それを照合してルックアップ。

noname#61024
質問者

お礼

chieffish様。色々とありがとうございました。 出来ました、ありがとうございます。 考えとして正しいか分かりませんが、とりあえず 全パターン分のレコードを作っておき、 それを参照する形にすれば自動入力的に使えるんですよね。 私が目的としてるファイルはこれで十分できそうです。 繰り返しフィールドについては自分なり勉強します。 何度もお手数をおかけしてすみませんでした。 ありがとうございました。

その他の回答 (7)

  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.7

あっ、違った、勘違い発言だ。どうするんだったけかな

  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.6

それはヘルプにあると思いますが「動的値一覧」と呼ばれます。照合フィールド(山田商店、川田商店・・)に よって、値一覧を変化させることが出来ます。元レコードが繰り返しフィールドだと出来ないです。

  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.5

別ファイルに りんご 70 みかん 50 バナナ 90 ・・・・・ とその10品目分を10レコード作って、商品名でリレーションを設定し、単価はフィールド 定義の自動入力でルックアップを設定します。 (品名を参照して::単価をコピーする)

noname#61024
質問者

補足

出来ました(*^_^*) ありがとうございました。 これだと、品名を訂正してもちゃんと単価も変わるし、 それに、別ファイルを常に開いた状態にしておかないとダメだと 思ってましたが、リレーションで指示しておくだけで、開く必要は ないんですね。良かったです。とても参考になりました。 本来ならお礼を言って、締め切りにしたいんですが 新たな問題にぶつかりました。 例えばある相手先はみかんの単価が50でも他の相手先のみかんは70とかに なった場合、このままではまずですよね。 最初からそうお聞きすれば良かったんですが、当初、単価は全て 同じで良いとう話しだったので(内輪の話しですみません) 考えてなかったんですが、ここにきて相手先によって単価が変わる事も あるって感じになり・・・・ お時間のある時で結構ですので、またお教え下さい。 山田商店のみかんの単価は50 川田商店のみかんの単価は180 このときのルックアップはどうすれば良いんでしょうか? 自分でもトライしましたがやっぱり分かりません。 よろしくお願いいたします。

  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.4

FM6ではそうなりますね。単価も消してやり直しでしょうか。やはりルックアップがいいですよ。 FM8では既存値を書き換えるオプションがあります。

noname#61024
質問者

補足

ありがとうございました。 FM6では無理なんですか・・・ ルックアップでも良いんですが、正直やり方が全く分からないんです。 別ファイル(新規ファイル)に例えばみかん、リンゴ、バナナの フィールドをつくり、それぞれに50、70、90と入力しておき、 こっちのファイルでみかんと入力したら、自動的にそのファイルの50が コピーされるんですよね。 そんな感じでやってみたんですが、設定さえできないんです。

  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.3

>ただ、念のため商品名フィールドは任意の品名も入力出来る >状態にしたいんです。(値一覧に無い商品名) >この定義だと商品名に値一覧にない例えばすいかと入力する場合、 >商品名フィールドの入力は出来ましたが、単価フィールドに >100と入力しようとするとこのフィールドは修正出来ませんと >メッセージがでます。(空白の状態なのに) 計算フィールドは手入力で修正はできません。 フィールド定義の入力の自動化で計算式を設定してください

noname#61024
質問者

補足

何度もすみませんでした。 最初、フィールドの定義でタイプを計算として Case(商品名="みかん", 50, 商品名="リンゴ", 70, 商品名="バナナ", 90)にしてました。 おっしゃられた通りにタイプを数次に変え、入力の自動化のところの計算で Case(商品名="みかん", 50, 商品名="リンゴ", 70, 商品名="バナナ", 90)を入力しました。 これで新規レコードを開いて、例えば商品名にみかんを選ぶと単価に50と 自動で入るんですが、間違えてリンゴを選んだ後(この時点で70が入る) みかんを選びなおしても50にならないんです(70のまま) これって仕方ないんでしょうか? 本当に何度もすみませんが、お助け下さい。

  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.2

>ひとつだけならif関数で出来たんですが・・・ If関数もIf(品名="みかん"、70、If(品名="りんご"、70、If()))といくらでも続けられます。 ()だらけになりますが。 普通は品名を入れたら自動で単価が出るというのはルックアップを使います。FM6の場合は 別ファイルに りんご 70 みかん 50 バナナ 90 ・・・・・ とその10品目分を10レコード作って、商品名でリレーションを設定し、単価はフィールド 定義の自動入力でルックアップを設定します。

noname#61024
質問者

お礼

別ファイルからルックアップする方法もあるんですか。 ただ、その場合だと、常にそのファイルも開いておかないと ダメなんですよね。 今のところ品名もそんなに多くないので とりあえず教えていただいたif関数かNo1様に教えていただいた case関数でやってみようと思います。 ありがとうございました。

回答No.1

case関数を使いましょう。あるいは、商品名と単価だけのファイルを別に作って、そこから商品名でリレーションを引いて単価を表示するか。

noname#61024
質問者

補足

早々のご回答ありがとうございます。 Case(商品名="みかん", 50, 商品名="リンゴ", 70, 商品名="バナナ", 90) で定義すると、ちゃんと出来ました。 ただ、念のため商品名フィールドは任意の品名も入力出来る 状態にしたいんです。(値一覧に無い商品名) この定義だと商品名に値一覧にない例えばすいかと入力する場合、 商品名フィールドの入力は出来ましたが、単価フィールドに 100と入力しようとするとこのフィールドは修正出来ませんと メッセージがでます。(空白の状態なのに) Case(商品名="みかん", 50, 商品名="リンゴ", 70, 商品名="バナナ", 90) がいけないんでしょうか。よろしくお願いいたいします。

関連するQ&A

  • アクセス・ファイルメーカーを使っての枝番処理

    はじめまして。データベースソフトに外部CSVファイルを取り込んで伝票処理を行いたく思っています。 取り込むCSVファイルには 伝票番号 枝番 品名 数量 123456  1  ○○  2 123456  2  △△  5 123456  3  ■■  9 123457  1  ◎◎  3 123457  2  ※※  6 ~~~~~~~~~~~~~~ このような感じのCSVデータをデータベースソフトに取り込みたいのですが、一つのレコードに同一伝票番号のデータを多段にして枝番フィールド順に取り込む事は可能でしょうか? 伝票番号 123456 品名1  数量 単価 金額 品名2  数量 単価 金額 品名3  数量 単価 金額 品名4  数量 単価 金額 ~~~~~~~~~~~~ 品名10 数量 単価 金額 ------------------------- 合計      合計金額 こんな感じで表示されたいです。 お知恵を貸してください。

  • ファイルメーカーpro6で

    こんにちは。ファイルメーカーpro6を使っている、超初心者です。 注文明細書で、商品別に小計金額を自動出力したいのです。 明細書の内容は、商品番号、商品名、個数、小計金額・・・合計金額のフィールドです。 別ファイルに商品番号順に、商品名、単価を入力したレコードがあります。商品番号でリレーションして、商品名をルックアップしています。そこまではできたのですが、小計金額の出し方がわかりません。 商品番号が1の場合はいくら、2の場合はいくら・・・という設定方法がわからないのです。Case関数かIf関数を使うのでしょうか? 是非教えて下さい!!

  • ファイルメーカー マイナス値だけを集計したい

    商品名  数量  単価  計 リンゴ    1   100    100 バナナ   -1   100   -100 リンゴ    1   100    100 バナナ   -1   100   -100 リンゴ    1   100    100 バナナ   -1   100   -100 初心者です。 このような表でマイナスの値だけを集計する計算式を教えてください。 ファイルメーカーpro12を使っています。 よろしくお願いします。

  • エクセルで注文書→請求書を作っていて困っています。

    下記のような注文書がSheet1にあります。 A列  B列 C列  D列 E列 品名  数量 単位 単価  小計 りんご 1  個  100 ¥100 みかん 0  個   30 ¥ 0 バナナ 2 本  100 ¥200 スイカ 2  個 200  ¥400 メロン 0 個  300 ¥ 0      合計 ¥700 上表のような顧客が数量を入力すれば小計が出るとこまでは出来ています。 Sheet2に注文のあった品目のみで請求書を生成したいのですが、 良い方法がありましたら教えていただけますでしょうか。 A列  B列  C列  D列  E列 品名  数量 単位  単価  小計 りんご 1  個   100 ¥100 バナナ 2 本   100 ¥200 スイカ 2  個 200  ¥400       合計 ¥700 ※要するに品名のラインナップがある中で0個のものは飛ばして  上図のような形に自動生成できるものが希望です。 色々な関数を試してみましたが、結果関数の意味も分からずやっているので、 なかなか思うようにできなくて困っています。 どうぞ、良い方法がありましたらご教示の程、よろしくお願いいたします。

  • vlookup関数で求めた数値の合計

    excelで20行まで入力できる発注書を作っています。 vlookup関数で商品コードを入力すると、商品名と単価は自動で表示されています。 単価×購入数量で商品毎に購入金額を求め、総合計を自動計算させたいのですが、、、 発注書には必ず20品目入力されるわけではありません。 この入力されない商品行の合計金額は#valueとなっています。 結果として総合計も#valueとなってしまいます。 どなたか総合計を求める方法をご教示ください。 宜しくお願いいたします。

  • エクセルの関数について。

    すいませんエクセルの作業で教えてください。こちらはエクセルのデータをコピーしたものを張り付けています。 下記のように同じ商品を数社に購入した場合にそれぞれの仕入れ先で何個購入出来て 仕入れ合計と売り合計がどうなのか簡単に表示できるようにしたいです。瞬時にわかりたいです・。 売り合計と仕入れ合計がいくらになるのかこちらのエクセルの下あたりに関数で入力しようと 思っているのですがなかなかやり方がわかりません。おそらくVLOOKUP関数でやれば簡単なのではと 思っているのですがどう入力設定をすればわかりません。忙しいところ申し訳ございませんが どなたか教えて頂けないでしょうか_? よろしくお願いいたします。 みずらくて申し訳ございません 品名はがアルファベット 仕入れ先もアルファベットになっております。 よろしくお願いいたします。 商品 数量 売り単価 合計 仕入先 仕入単価 仕入合計 リンゴ 50 65 3,250 A商店 49 2,450 リンゴ 50 56 2,800 B商店 42 2,100 リンゴ 50 35 1,750 B商店 25 1,250 リンゴ 50 43 2,150 A商店 30 1,500 リンゴ 50 170 8,500 A商店 120 6,000 リンゴ 50 43 2,150 A商店 30 1,500 ミカン 50 36 1,800 A商店 18 900 ミカン 50 36 1,800 A商店 18 900 ミカン 50 37 1,850 A商店 25 1,250 ミカン 50 70 3,500 C商店 50 2,500 ミカン 50 70 3,500 D商店 50 2,500 パイナップル 50 55 2,750 D商店 40 2,000 パイナップル 50 135 6,750 D商店 100 5,000 パイナップル 50 45 2,250 C商店 30 1,500

  • ファイルメーカーでの見積書作成

    これまで社員各々がExcelで個別に作成していた見積書等を一元化 および効率的に作業する為ファイルメーカー8.5で、作成していこうと思います。 商品DBからリレーションなどをして、商品コードを打ち込んだら、商品 名や単価が表示されて、数量を打ち込んだら合計金額が自動計算されて いくようなものを作っていきたいと思います。いずれは請求書や売上集 計などまで行いたいと思います。 見積内容の項目等のフィールドを作成していくにあたり、項目に関して 繰り返しフィールドで作成を考えておりましたが、ファイルメーカー社 などのサンプルなどを見ると、ポータル?で作成されているようです。 ネットで検索してみてもポータルで作成すべきというご意見が多いよう ですが、ポータルの概念をいまいち理解できておりません。 商品DBからルックアップして商品名、単価等を表示させる時、もうひと つ何かかませるのでしょうか?単純にポータルツールを使ってみたので すが何も表示されませんでした。ご教授いただけましたら幸いです。

  • 単価×数量の関数

       A     B     C      D       E       F     G      H・・・ 1  商品1  詳細1   数量1    単価1   商品2    詳細2   数量2   単価2・・・詳細30  詳細30-(2) 2 リンゴ  2/1購入    1     100     梨     3/1購入    2     300    上記の様に、商品名、詳細、単価、数量が1行に記入されています。 これらの合計金額を計算する場合、通常でしたら =C2*D2+G2*H2・・・ という計算式と使用しますが、 品名が30を超える場合もあるので、上記の計算式では足していくのが非常に大変です。 何かほかに、簡単な関数はあるでしょうか? 宜しくお願いします。

  • エクセル2000で・・

    品番 品名  単価  在庫数 1  リンゴ  120  1000 2  ミカン  100  1000 3  バナナ  80  1000 という表があるとします。 次に別シートに 品番 品名  単価  売れた数 2  ミカン  100  10 と、売れた分量を示す表があります。 そしてもう一つ別シートに 品番 品名  単価  在庫数 1  リンゴ  120  1000 2  ミカン  100  990 3  バナナ  80  1000 というシートがあり、一つ目のシートから二つ目のシートで売れた分の数を引いた数量を表す表があります。 二つ目の表を入力した際に、自動的に三つ目の表の在庫数が表示されるような関数はありますでしょうか?

  • ファイルメーカーの計算について

    テーブルAとBの間で計算したいのですがうまくいきません。 A(仕入管理)にはフィールド「商品名・単価・個数・合計金額」が各5組あります。このフィールドの商品名・単価はテーブルB(商品マスタ)からルックアップしたものです。  この商品名・単価・個数・合計金額をルックアップ元のテーブルBに商品別に表示(計算)したいのですが、計算式がいまいちうまく行きません。