エクセルで便利な計算式(関数)を紹介!

このQ&Aのポイント
  • エクセル(excel)の計算式(関数)で便利なアイディアを教えてください。
  • データを入力したセルから順に、合計が10以下になるように列の記号を埋めていく計算式はありますか。
  • 項目行の下にデータの数だけ列の記号を埋めていく便利な計算式を教えてください。
回答を見る
  • ベストアンサー

エクセル(excel)の計算式(関数)について

エクセル(excel)の計算式(関数)でよいアイディアがありましたら教えてください。 1行目は項目行です。 セルA1から右に15列=セルO1まで、 a | b | c | d | e | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 と入っています。 2行目からデータとして、 セルA2から右に5列=セルE2まで、 4 | 2 | 2 | 1 | 1 と入力したとします。(データ例(1)) あるいは、 セルA3から右にセルE3まで、 6 | 3 | 0 | 0 | 0 と入力したとします。(データ例(2)) 1つのデータの5個の数字のルールは2つで、 「合計で10以下である。」 「左から順に小さくなるか、同じ数字となる。」 です。 (目的は、) このとき、F列からO列にかけて、 データ例(1)のケースでは、 a | a | a | a | b | b | c | c | d | e データ例(2)のケースでは、 a | a | a | a | a | a | b | b | b | と表示されるように、 つまり、項目行の下にある数だけ、その列の1行目の記号を 1(F列)から右に向かって順に埋めていくような、 F列からO列までの2行目以下に入れる適当な計算式(関数)は ないでしょうか。 拙い説明で申し訳ありません。どなたかよい考えをお持ちの方がいらっしゃいましたらと存じます。 どうぞよろしくお願い致します。

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

A:E列でRept関数で1行目の文字を繰り返して出来た文字列結合+半角スペース10個で、大元の文字列を作成。 MID関数で先頭からn文字目を1文字取り出す。 ……ってな感じでいけそうです。 F2セルに↓を入れてコピーしてみてください。 =TRIM(MID(REPT($A$1,$A2)&REPT($B$1,$B2)&REPT($C$1,$C2)&REPT($D$1,$D2)&REPT($E$1,$E2)&REPT(" ",10),F$1,1))

toukeiflee
質問者

お礼

素晴らしい!出来ました。 REPTって初めて見ました。よく勉強してみます。 どうもありがとうございました。

関連するQ&A

  • エクセル関数の詳しい方ご教示ください。

    エクセルの詳しい方、ご教示ください。 A B C D E F G(表示したい列) 1行目 2 3 5 7 9 2 =知りたい関数 2行目  4 5 8 9 1 2 上記のようなランダムな数値データがあり、 ・Aの列に表示している数字の数だけ、 ・Bから右の列に移動した数字を、 ・Gの列に表示したい と、思っています。 例で考えると、 G1のセルは7 G2のセルは2 と表示されるイメージです。 Gにはどのような関数を使えばよいでしょうか?

  • 参照した数値を関数に代入し計算する方法

    手動で数字を入力するセル(C1)に入れた数字と同じ数字を 規則的に数字が書いてある(例;1~100)A列から探し A行の隣に書いてあるB行の数字(A1だったらB1)を 参照し関数の入っているセル(E1)にBの値を入れてExcelで 計算するような方法(マクロになるようなら貼り付ければできる形)を 教えて下さい(B1の値が直接使えないならD1というA行の隣から探した Bの数字を表示するセルを作る形でも可) 例えばC1に10といれA行から10と書かれているA6のセルを検索し その隣のB6のセルから20という数値を参照し、E1に書いてある 例えば=IF(X(B6)<45,Y(例;F1)*1.5,IF(45<X(B6),Y(例;F1)*2)) のような関数のXに代入する感じです(Y(F1)の数字は適当なセルの値) 上手く説明できていないかもしれませんが宜しくお願いいたします

  • エクセル関数の質問です。

    エクセルでセルA1=4の場合セルB2=セルD1、セルA1=5の場合セルB2=セルE1、セルA1=6の場合セルB2=セルF1というように、セルA1に数字を入力するとセルB2に反映するようなセルB2に入力する関数を教えて下さい。  セルA1には月(4月から3月)の数字(4~12、1~3)が入り、4月のときにはD列(D1)、5月のときにはE列(E1)、6月~3月にはF列(F1)~O列(O1)の数字が入ります。よろしくお願い致します。

  • Excel関数

    Eccel2003を使用して以下のような入力作業を行っております。 A列~C列のセルに「1~10」いずれかの数字を入力して行きます。 入力パターンは (1)A列だけ入力 (2)A列とB列に入力 (3)A列~C列全てのセルに入力 の3パターンです。 複数の列に数字を入力する場合((2)及び(3))、同じ数字を入力することはありません。 【例】     A B C D  1  5  4  1  2  6  3   1 2  4   2 4 5  ・  ・  ・ このとき、A~C列に一つでも該当の数字(ここでは2と4と5)が入力されていた場合に、 ある文言(30文字くらい)をD列に反映させたいのですが、何か良い関数等ありますでしょうか?    ※ 上記例の場合、1,3,4行目のD列に文言を反映 例の4行目のように全ての列に該当の数字を入力することもあります。 ご教示頂きたく何卒宜しくお願い致します。

  • Excel関数

    Eccel2003を使用して以下のような入力作業を行っております。 A列~C列のセルに「1~10」いずれかの数字を入力して行きます。 入力パターンは (1)A列だけ入力 (2)A列とB列に入力 (3)A列~C列全てのセルに入力 の3パターンです。 複数の列に数字を入力する場合((2)及び(3))、同じ数字を入力することはありません。 【例】     A B C D  1  5  4  1  2  6  3   1 2  4   9 1 3  ・  ・  ・ このとき、A~C列に一つでも奇数が入力されていた場合に、 ある文言をD列に反映させたいのですが、何か良い関数等ありますでしょうか?    ※ 上記例の場合、1,3,4行目のD列に文言を反映 例の4行目のように全ての列に奇数を入力することもあります。 ご教示頂きたく何卒宜しくお願い致します。

  • EXCEL2007での関数について

    すみません、関数について教えてください。 図のように、セルC(=B*0.9)からセルE(=D*0.9)の値を引いてセルFに数字を出したいのですが、 セルCが空白の場合は、セルBの数字を参照してセルFに数字を出すとゆう関数ってありますか? IF関数の勉強不足により、それが可能かどうかがわかりません。 補足:『通常は、セルC-セルE=セルF、でも、セルCが空白の場合は、セルB-セルE=セルF』といった感じの関数があれば教えてくださいm(_ _)m

  • EXCEL2007 情報抽出 関数

    A~E列それぞれの一つのセルに"1"を入力し、F列にある情報を抽出、 G列のセルに表示させたいです。 行が多いので、IF関数などは使用できませんでした・・・ 何を使用すればよろしいでしょうか・・・? 例) A1~A20 B1~B20 C1~C20 D1~D20 E1~E20 それぞれの列の一つだけに1を入力します。 ・A 5に1を入力 → F5の情報をG1に表示 ・B15に1を入力 → F15の情報をG2に表示 ・C 2に1を入力 → F2の情報をG3に表示 ・D18に1を入力 → F18の情報をG4に表示 ・E9 に1を入力 → F9の情報をG5に表示 行数が多く、複数の関数を試してみても、数の制限にひっかかるのか うまくいかず困っています。どうぞよろしくお願いします。

  • Excel 関数で上から順に数字を整列させる

    Excelで、下記表(例)に入力された数字を上から順に関数を用いて隣のB列に整列させたいです。 ・例 A1:A60の表があります。 ※以下A列に入力された数字とします 1 空白 2 20 3 空白 4 15 5 25 ・(省略、この間空白と考えて下さい) ・ ・ 59 10 60 空白 上記表(例)は、A2に20,A4に15,A5に25,A59に10それ以外は空白を表します。 上記表のセル内数字は全て手入力とします。 全てのセルが空白の場合もあります。 B列はB1:B5の5行です。 この入力された数字を関数を用いて、B列に上から順にB1に20,B2に15,B3に25,B4に10,B5は空白となるように整列させたいです。 B列セル結果は他シートに参照されますのでセルはロックを掛けています。 上記のことからデータの並べ替えも使えませんし昇降順でもありません。 上から順に整列させた数字を、B1:B5の5行内で上位5まで表示させます。 A列の行数が多いのでif関数も使えません。 なお、上記質問内に不明な点がありましたら補足させて頂きます。 以上、宜しくお願いします。

  • EXCEL関数について

    EXCEL関数について Sheet1、A1~A1000セルに「1~10」までの値がランダムに入力されております。 数字は「グループ1」、「グループ2」・・・という意味です。 B列、B1~B1000セルには「1~4」までの値がランダム入力されております。 B列については、空白のセルもあります。 Sheet2、A1~A10セルに、「1~10」までの値、「グループ1」~「グループ10」までが順に入力されております。 ここで、Sheet2、B列~E列、それぞれの1~10セルを使用し、、 それぞれの「グループ」がSheet1にて「1~4」の値をいくつずつ選んでいるか算出したいのです。 「グループ1」について、「1」のカウントはB1セル、「2」のカウントはC1のセルに返します。 同じように「グループ2」はB2~E2のセルに、「グループ3」はB3~E3のセルに値を返したいのです。 「COUNTIF」等の関数でいろいろと試してみたのですがうまく反映されません。 拙文乱文、大変恐縮ですが、ご教示頂きたく何卒宜しくお願い致します。

  • EXCELの関数

    EXCELで、Aの列に○、Bの列に×がある行のCの列の数字を返す関数の使い方があれば、教えて下さい。 AとCの二つの列だけだと、VLOOKUPという関数を使えばAが○の時のCの数字を返す事ができるという事までは分かりましたが、Aの列に○がある行が2つ以上ある場合(Aの列が○で、Bの列が△である行を無視したい場合)、そのまま使うことができなくて困っています。 かなり初心者なので、申し訳ありませんが、よろしくお願いします。 例 ○   △   5 ×   □   3 ○   □   4 ○   ×   1 上のような行が無数に並んでいる場合で、左の列と真ん中の列の組み合わせが1つしかない時、左の列と真ん中の列の文字を指定した時の右の列の数字を返したい。

専門家に質問してみよう