• ベストアンサー

入力された数値とその右側の数値(文字)での表作成

Excel Ver2007 任意の列(この場合はB列)のセルに入力してある数値(「表A」のB2、B4、B5、B8)と、その右側にあるのセルの数値(文字の場合もあります。「A表」のA2、A4、A5、A8)だけを選んで、「表B」のように作成できる関数はありますか、ご教示をお願いします。

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

D2セルには次の式を入力し、式を確定する段階でCtrlキーとShiftキーを押しながらEnterキーを押します。その後にその式をE2セルまで横にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(ROW(A1)>COUNT($B$2:$B$20),"",INDEX($A$2:$B$20,SMALL(IF($B$2:$B$20<>"",ROW($B$1:$B$19),1000),ROW(A1)),COLUMN(A1)))

atsushi0927
質問者

補足

 早速回答を頂き感謝しております。実際に上記の関数で行ったところ出来ました。  そこで、追加の質問があります。B3に「0」、B6に「0.5」、B7に「入力なし(空欄)」が入力されていた場合(当然B2に「1」、B4に「2」、B5に「2」、B8に「1」が入力されています)、入力され、かつ「0」よりおおきな数値だけを選んで表を作成することができる関数はどのようにつくれば良いのでしょうか、改めてご教示をお願いします。

その他の回答 (3)

回答No.4

オートフィルタを取り付けて、絞り込んでみては? と思いつつ、数式を聞かれてるんで一応、お勧めでない難解なのも載せておきます。なお A・B 列は、数値と文字列のどちらを記入してあっても両列とも平気です。 D2 =iferror(index($A:$B,small(index(row($B$2:$B$8)+9^9*(countif(indirect("b"&row($B$2:$B$8)),"")),),rows(D$2:d2)),columns($D2:d2)),"") ※ D2 セルをコピーして D2:E8 のセル範囲に貼り付け

noname#204879
noname#204879
回答No.3

別解(添付図参照 Excel 2002) 1.範囲 A1:B1 の左から項目名として fld1、fle2 を入力 2.範囲 A1:B1 を[コピー]して、此れをセル D1 に[貼り付け] 3.セル C1 は空白のままにして、セル C2 に式 =B2<>"" を入力 4.範囲 A1:B8 を選択 5.[データ]→[フィルタ]→[フィルタオプションの設定]を実行 6.[抽出先]→   “指定した範囲”   [検索条件範囲]→ $C$1:$C$2   [抽出範囲]→   $D$1:$E$1 7.Enterキーを「エイヤッ!」と叩き付け

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

簡単な関数だけを使い、表Aを添付図左のように作成します A2には =IF(C2="","",COUNT($A$1:A1)+1) 以下コピー E2には =IF(ROW(E1)>COUNT($A:$A),"",VLOOKUP(ROW(E1),$A:$C,COLUMN(A2))) と記入、右にコピー、下にコピーして完成。 A列やE列が目障りなら、簡単には列を非表示にして隠しておくとか、文字色を白にして目に見え無くしておきます。 また全然別のZ列とかシート2とかに配置して計算させることも出来ますが、それだけ数式は複雑に簡単じゃなくなっていきます。

関連するQ&A

  • 入力された数値とその左側の数値(文字)で表の作成

     http://okwave.jp/qa/q8214979.html(「入力された数値とその右側(左側でした)の数値(文字)での表作成」)で質問した者です。その際は大変お世話になりました。有り難うございました。その後、その回答に対して新たに質問があり「補足」で質問させて頂きました。しかし、トピックを新たに立てた方が回答が寄せられると思い、トピックを立てさせて頂きました。ご理解を頂けばと思います、  質問内容は、下の「表A」から、数値が入力され、かつ「0」よりおおきな数値だけを選んで(この場合「B列)、その数値の左側あるのセルの文字(この場合「A列」。数値の場合もあります)と一緒に移動させて、「表B」を作成することができる関数はどのようにつくれば良いのでしょうか、改めてご教示をお願いします。宜しくお願いします。

  • エクセルの表作成にあたって

     お世話になります。  エクセルで下記のような表を作成したいのですが、ご教授お願いいたします。  A列には元々時間が入っており、B列にはその時間の数値が入ります。 A1が10時、B1の数値が10 A2が11時、B2の数値が12 A3が12時、B3の数値が40 A4が13時、B4の数値が23 A5が14時、B5の数値は未入力(空欄) A6が15時、B6の数値は未入力(空欄)  A列では元々時間が入っておりますが、実際にその時間が来た時にB列に数値を手入力して行きます。  任意のセルに上記の数値の最新データを表示したい。上記の場合はB4の数値23を任意のセルに表示したい。  時間が過ぎていくことにより、常に最新のB列の数値データを取得して任意のセルに表示するような方法を教えて下さい。 (つまりB列で空欄の一つ前のデータを自動的に取得したい。) 【補足】  最新数値データの下は常に空欄になっています。  説明不足な点があれば補足いたします。  これが出来れば非常に助かります。よろしくお願いいたします。

  • エクセル 文字列で入力した数字を数値にする

    エクセルで、文字列の設定で入力した数字は、[セルの書式設定]で、数値として設定しても、文字列のままになります。 (セルの左上に、文字列と分かる緑の三角が付いたままになり、表を作ってもグラフの表示は出来ません。) 数値として数字を入力をした後、[セルの書式設定]で文字列にして、再び[セルの書式設定]で数値にすると、数値にはなります。 (この場合、文字列にしても、セルの左上に緑の三角が付かず、このまま表を作ると数値(小数点以下が0の場合は小数点以下が削除されます。)の扱いとなりグラフの表示が出来ます。) 文字列で入力した数字は、数値にはならないのでしょうか? よろしくお願いいたします。

  • エクセルでの表の作成

    今、エクセルの表で、A1からA100まで、1~100の連続した数字が入っています。C列のC1~C8には、任意の数字を入れます。 その際、C列に在る数字と同じ数字が在るA列のセルの右のセル(B列)に、自動的に○を、無ければ×と表示されるようにしたい、と思います。 次のような形です。  A列      B列       C列    1       ×       3 2          ×        6 3          ○        7 4         × 5         × 6        ○ 7         ○ 8         × 9         × 10         × ・    ・   ・   これを可能にする関数をご教示ください。

  • IF関数で0より大きい数値が入力されたら「あ」と表示、文字列の場合は空白としたい

    エクセル2003です B1に =IF(A1>0,"あ","")とすると「0」のときは、空白となりますが文字列が入力されたときにも「あ」と表示されてしまいます。 A1セルに「0」より大きい数値が入力されたときだけ、B1セルに「あ」と表示したいのです。 よろしく御願いします。

  • エクセル2000で文字列から数値を抽出したい。

    エクセル2000で文字列から数値を抽出したい。 ワークシートのA列に下記の文字列が入力されています。 A1セル="123456 日本男子 54,321 7,654,321 12,345" A2セル="234567 東京都子 1,234 2,345 5,321" A3セル="345678 大阪太郎 99 689 9,876" データ間はスペースで区切られています。 後方2番目の数値をB列に取出す方法を教えて下さい。 B1セル=7,654,321 B2セル=2,345 B3セル=689 よろしくお願い致します。

  • エクセルで数値と文字が入ったセルからの数値の抽出

    皆さんこんにちは。 エクセルの使い方についての質問です。 添付画像の例のようにA列に 「XXYYYZZ(XとZは文字、Yは数値で3桁または4桁)」というフォーマットで 数値と文字が入っているセルがあります。 同様にB列には「WWZ(Wは数値)」というフォーマットで、 同様に数値と文字が入っているセルが並んでいます。 これらからDやE列にあるように数値のみを取り出すためには DやE列にどのような関数を入れてやればよいのでしょうか。 どなたか教えていただければ幸いです。 よろしくお願いします。

  • エクセル 表から選択→入力する方法

    エクセル2003 添付画像の様な表がある場合 表から選択(クリック)するだけで、任意(赤いセル)にその 数値を入力する方法を教えて下さい。 例:表の8月”b”のセルをクリックするだけで 赤いセルにその”b”が入力される。 宜しくお願い致します。

  • Excel 隣のセルの頭文字に応じて文字を自動入力

    Excelの質問です。 隣のセルに入力された文字列の頭の文字に応じて、セルに自動的に文字を入力するにはどうすればよいのでしょうか?関数初心者です。 具体的には、 A1のセルに「T○○○○○」(○は任意の数字)が入力されていれば、頭文字がTなので、B1のセルに東京と自動的に表示する。 A2のセルに「N○○○○○」(○は任意の数字)が入力されていれば、頭文字がNなので、B2のセルに長野と自動的に表示する。 です。 よろしくお願いします。

  • エクセル97です。表中の空白セルに0を入力する関数を教えてください。

    数値が入った表があります。 ところどころに数値の入っていない空白セルがあります。 そのセルに0を入力する関数を教えてください。 入力後、その表からグラフを作成したいので、文字列ではなく数値でないとダメですよねぇ?

専門家に質問してみよう