エクセルのセルへの値の自動入力

このQ&Aのポイント
  • エクセルのセルへの値の自動入力の方法を知りたい
  • A2のセルに日付を自動で入力したい
  • A2の行を右に検索し、○が見つかった列の一番上の値をA2のセルに自動反映したい
回答を見る
  • ベストアンサー

エクセルのセルへの値の自動入力

こんにちは。 エクセルへのセルへの値の自動入力の仕方が分からなくて困っています。 文章よりも、添付の画像を見て頂いた方が分かりやすいと思うのですが、 A2のセルへ、日付を自動で入力したいのですが、A2の行を右に検索して、 ○が見つかったら、その○が見つかった列の一番上の行にある値をA2のセルに 自動で反映されるようにしたいのです。 A2の行には、○の他に、×が入力されている場合もあるので、”○だったら” という判定が必要です。 始めは、目視で見ながら手入力しようと思っていたのですが、行数が数百ある上、 目視・手入力だと間違いが発生する可能性があるので、エクセルの関数などで 自動で入力したいです。 すみませんが、宜しくお願い致します。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.5

 ○が存在しない行がある場合や、1行目に日付が未入力となっている場合の事も考えますと、A2セルに入力する関数は次の様にされた方が良いと思います。 =IF(AND(COUNTIF($B2:$D2,"○"),COUNT($1:$1)),INDEX($B$1:$D$1,MATCH("○",$B2:$D2,0)),"")  更に、セルの削除や挿入、切取り&貼付け、等の編集作業が行われたり、表が右側に延長(列数が増加)されたりした場合でも、関数を入力し直さずに済ませたい場合には、A2セルに入力する関数は次の様にされた方が良いと思います。 =IF(ISNUMBER(1/COUNTIF(INDEX(2:2,COLUMN($A$1)+1):INDEX(2:2,MATCH(9^9,$1:$1)),"○")),INDEX($1:$1,MATCH("○",INDEX(2:2,COLUMN($A$1)+1):INDEX(2:2,MATCH(9^9,$1:$1)),0)+COLUMN($A$1)),"")

labrakun
質問者

お礼

凄いです!とにかく凄いの一言です! この方法でおこないました。 自分は努力がたりませんでした。 どうもありがとうございました。

その他の回答 (4)

noname#204879
noname#204879
回答No.4

A2: =IF(COUNTIF(B2:Z2,"○"),SUMPRODUCT((B2:Z2="○")*(B$1:Z$1)),"") ただし、各行において ○のセルは2個以上はないものとします。

labrakun
質問者

お礼

ありがとうございます。シンプルなやり方も覚えておきます。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

No.2です! たびたびごめんなさい。 投稿した後で気づきました。(難しく考えすぎていました) No.1さんの imogasiさんの方が簡単な数式ですね! No.2は無視してください。m(_ _)m

labrakun
質問者

お礼

ご丁寧にありがとうございます。tom04さんの温かい心、やさしさに触れてちょっぴり感激しています。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! 各行に「○」は一つしかない!という前提での一例です。 当方使用のExcel2003の場合で最終列まで対応できる関数です。 画像の配置でA2セル(セルの表示形式は「日付」にしておきます)に =IF(COUNTIF(B2:IV2,"○"),INDEX($B$1:$IV$1,,SUMPRODUCT((B2:IV2="○")*COLUMN($A$1:$IU$1))),"") としてオートフィルで下へコピーではどうでしょうか? ※ 上記数式の場合、「○」がない行があればそのA列は空白になってしまいます。 空白が目障りであれば空白を削除する。 他の方法としてはVBAの方が簡単かもしれませんね。 お役に立てば良いのですが・・・m(_ _)m

labrakun
質問者

お礼

ありがとうございました。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

例データ ーは空白セルで左詰されるのを便宜上防止するためのもの。 - 2011/9/5 2011/9/6 2011/9/7 2011/9/8 2011/9/9 2011/9/5 ○ 2011/9/6 - ○ 2011/9/5 ○ 2011/9/7 - - ○ 2011/9/9 - - - - ○ A2の式は =INDEX($B$1:$Z$1,MATCH("○",$B2:$Z2,0)) 下方向に式を複写。 A列の表示形式を日付書式に設定しておく(または自後設定する)。

labrakun
質問者

お礼

早速教えて頂き、ありがとうございます。いくらなんでもみなさん頭がよすぎです。 自分はまだまだ本当の努力をしていないとわかりました。 ありがとうございました。

関連するQ&A

  • エクセルでセルに入力した値によって指定したセルに○をつけたいのですが・・・

    エクセルで、例えばあるセルに Aと入力した場合、 別の【表】のAの列のセルに ------------ |A|○| ------------ |B| | ------------ |C| | ------------ Bと入力した場合は、 Bの列の場所に ------------ |A| | ------------ |B|○| ------------ |C| | ------------ というような感じで○を自動で反映させたいのですが、 どういった関数を入力させればよろしいでしょうか? 分かる方は教えていただけますでしょうか?

  • エクセル 文字入力の自動化について

    エクセル初心者です。 Excelで、複数行のセルの値の先頭に"0"を挿入したいのですが、 行数が多すぎるので、自動化したいです。 何か方法を教えていだたけないでしょうか。 例:"12345"を"012345"にしたいのです。 よろしくお願いします。

  • 空白セルに自動で値を入れたい

    どなたかご教授賜りたく・・・。 エクセルの表(具体的にはピボットテーブルをコピーして値を貼り付けた)で、列ごとで値と空欄のセルが混在しています。 基本的に空白はその列の直近の上の値が入ります。 1行空欄ならそのすぐ上の値、2行空欄があってもやはり上の直近の値が入ります。 例)    A 1 ○○○   2 3 ○△○ 4  5     ↓    A 1 ○○○   2 ○○○ 3 ○△○ 4 ○△○ 5 ○△○ という風にしたいのです。 現在、オートフィルタで空白だけをソートして、Ctrl+Dをひたすら押し続けて上の値をコピーしていますが、数百行もあれば手の指が疲労して硬直してしまいます。 関数を使って自動で入れる方法はありませんでしょうか?

  • エクセルで空白を除いて値を自動入力したい

    a1セルからZ1セル迄横に任意のセルがあって、そのうちの5か所程度に、 数値または文字の入力があります。入力のあるセルの値を同じ行の aa1からae1までに順番に自動で入れたいのですが、良い方法がありますでしょうか?

  • エクセルの個々の合計値

    ご質問があります。 エクセルを使って大量行数の計算を考えております。 どなたか関数などのアドバイスを頂けないでしょうか。 1.左セル(値)には数値が始めから入力あり。 2.右セル(合計値)に左セルの合計値を反映したい。 3.左セル(値)の値が空白でない限り上から順に足し算する。 4.左セル(値)の入力が始まっているところに右セル(合計値)を反映したい。 5.左セル(値)の空白行数はランダムである。

  • 同じ値のセルを見つける

    エクセルで、違う行列に入力してある、同じ値のセルを見つけたいのですが、何か方法はあるでしょうか。 例えばA1とB2セルが同じ値(X)と入っていたら、その2行を表示する等です。

  • セルに値を入力したら、セルに自動で網掛け

    はじめまして。 セルK3に値が入力すると、自動でセルA3からK3までセルに網掛けがされる設定がしたいのですが、可能でしょうか。 可能であれば、どなたかやり方を教えていただけませんか。 よろしくお願いします。

  • Excelで、セルを削除した際に、自動的に繰り上がるセルの値を入力させ

    Excelで、セルを削除した際に、自動的に繰り上がるセルの値を入力させたい。 シート1にずらーっと名前のリストを表示させています。その名前を、シート2で拡大して表示させる為に、シート2に大き目のセルを結合させて作成し、当該のセルに「=シート1!A1」との数式を入れました。 この段階では、シート1のA1の値が、シート2に拡大表示されている状態となります。 拡大表示させた物を印刷する事が目的な為、この状態を印刷した後に、シート1でA1のセルを削除しました。自動的にシート2には、繰り上がったシート1のA1になるはずの次の値(「削除する前はA2)が繰り上がって表示されるかと思っておりましたが、「#REF!」の表示が出てしまいます。 設定か何かで自動的に繰り上がった値が表示される方法はありませんでしょうか。 ※ちなにみ、この表示される値は数式等ではありません。

  • EXCELで数値の同じセルの行を自動的に選択したい

    ある固定のセル(例えばA列1行目)に入力した値と同一値が入っているセル(A列の?行)を検索し、その行すべての値を固定の行(例えば2行目)に自動的に入力する方法はありますか。 具体的に言うと、 前提条件として、行は日々増えていきます。 (1)セル(A1)に「2006/11」と自分で入力すると、 (2)A列内で「2006/11」を自動的に検索する。 (3)その結果セル(A15)に同一値が見つかったとする。 (4)15行目の数値(列A~列Gまで)を2行目に自動的にコピーする。 自分で入力するのは(1)だけです。 このようなことはどうすればできるのでしょうか。

  • エクセル もし、セルが空欄なら、その上のセルの値を入力する

    エクセル2002を使用しています。 例えば、A列に順に数値が入っているのですが、ところどころ空欄です。 <こんな感じです。> 12 15 22 33 34 55 <ここまで> 数値は、連番ではありません。不規則です。約300行あります。 本当は、空欄の場所は一つ上のセル数値が入るのです。(連続して空欄になっているところも、一つ上の数値と同じ値が入るのです。) <上の例を当てはめると> 12 15 22 22 ← 33 34 34 ← 34 ← 55 <ここまで> こんな感じにしたいのです。 関数などで一つのセルに入力して、あとはフィルドラッグでコピーするなんていう便利な方法はありませんか? すでに入力している数値が消えないようにしたいのです。 よろしくお願いいたします。

専門家に質問してみよう