• ベストアンサー

エクセルで関数を使って自動処理出来ないでしょうか?

シート1に、Aさんのデータがk1.k2.k3.k4.k6.k7にあります。Bさんk10.k11.k12.k13.k15.k16、Cさんk19.k20.k21.k22.k24.k25という様に、約100名分あります。 そのk列のデータをシート3に 1行目 k1.k2.k3.k4.k6.k7 2行目 k10.k11.k12.k13.k15.k16 3行目 k19.k20.k21.k22.k24.k25 ↓続く 100行目   上記のように行を詰めて表示させたいのですが、何か良い方法はありますでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.5

#1、#4です。 > Aさんのデータは k1.k2.k3.k4.k5.k6 > Bさんのデータは k10.k11.k12.k13.k14.k15 > と、いうように修正しました。 > Aさん、Bさん等個々のデータの区切りは3行です。 まえのままでもよかったのですが ならば、+(COLUMN()>4)*1 が不要になりましたので =INDEX(Sheet1!$K:$K,COLUMN()+(ROW()-1)*9)  ですね。

lobin_2008
質問者

お礼

表示する事ができました。 後は、自分で調べながらやろうと思います。 どうもありがとうございました。

その他の回答 (5)

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

質問の表現では良くわからない。 実例の書き方も不満あるが、実例だけではルールはわからないことが多いのだ。 折り返しのルールも文章で書くこと。2セル空白だと行を改めるルールか? 回答者に不要な推測させないこと。 下記のAさん、Bさんは・・はどうして判別できるのか? 空白セル(行)の存在を以って、行を改めるのか? 書き方例見本 行番号 K列(A列の例として質問には書くべきだ) (1)A 10 (AはAさんのデータのつもり。以下同じ) (2)A 11 ・・ (5)空白<--異例 (7)A 23 (8)空白 (9)空白 (10)B 14 (11)B 34 ・・・ (14)空白<--異例 (15)B 13 (16)B 12 (17)空白 (18)空白 (19)C 3 ・・ ーーー こういう表の組み換えは、関数では難しい。それを質問に出すのは エクセルの関数経験が少ないからだ。 ーー 「2空白が続くと改行、1セル空白は詰める」ならVBAでなら比較的簡単なコードでやれるが、質問者がVBAがわかるかどうか不明で 回答は略。

lobin_2008
質問者

お礼

質問の仕方が悪くて申し訳ございません。 おっしゃる通りエクセルは、今まで簡単な関数しか使った事はありませんでしたので・・・ もっと勉強します。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.4

#1です。 ひょっとして空白は不規則ではなくすべて掲示されたとおりの配置なのですか? ならばA1に =INDEX($K:$K,COLUMN()+(COLUMN()>4)*1+(ROW()-1)*9) と入れて、F1まで式をコピー 次にA1からF1をまとめて100行目までコピーしてみてください。

lobin_2008
質問者

お礼

表示する事ができました。 後は、自分で調べながらやろうと思います。 どうもありがとうございました。

  • jo-zen
  • ベストアンサー率42% (848/1995)
回答No.3

逆の内容になりますが、似た質問が先日ありました。そちらに私が回答した内容を応用すればいいのかと思います。以下のURLを参考にしてみてください。   http://oshiete1.goo.ne.jp/qa4153265.html 数字の入ったセル7+空白もしくは文字列が入ったセル2の9つのセルが1セットになるのかと思いますが、シート3の1行目にOFFSET関数を使った数式を入れてあげて、あとは1行目を下にコピーする方法がいいかと思います。シート3の A1に  =OFFSET(Sheet1!$K$1,8*(ROW()-1),0) B1に =OFFSET(Sheet1!$K$2,9*(ROW()-1),0) C1に =OFFSET(Sheet1!$K$3,9*(ROW()-1),0) というふうにG1まで入力してあげればいいかと思います。あとは、A1:G1を下にコピーしてあげればいいかと思います。

lobin_2008
質問者

お礼

表示する事ができました。 後は、自分で調べながらやろうと思います。 どうもありがとうございました。

  • keirika
  • ベストアンサー率42% (279/658)
回答No.2

A列~D列 =OFFSET(Sheet1!$K$1,COLUMN()+(ROW()-1)*9-1,0,1,1) E列~F列 =OFFSET(Sheet1!$K$1,COLUMN()+(ROW()-1)*9,0,1,1) を入れてみてください。

lobin_2008
質問者

お礼

表示する事ができました。 後は、自分で調べながらやろうと思います。 どうもありがとうございました。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

すべてK列にあるんですよね?そして不規則に空白のセルがある・・・。 では、AさんやBさん以下100名のそれぞれのデータの区切りはどうやって判定すればいいんでしょう?

lobin_2008
質問者

お礼

表示する事ができました。 後は、自分で調べながらやろうと思います。 どうもありがとうございました。

lobin_2008
質問者

補足

早速回答ありがとうございます。 不規則に空白のセルがある。 まず、表に問題があるようですので、ここは修正しました。 Aさんのデータは k1.k2.k3.k4.k5.k6 Bさんのデータは k10.k11.k12.k13.k14.k15 と、いうように修正しました。 Aさん、Bさん等個々のデータの区切りは3行です。 よろしくお願いします。

関連するQ&A

  • エクセルでHLOOKUP関数の選択範囲について

    エクセルでHLOOKUP関数を使って、検索したいのですが、 シートは、一覧表のシートと データが入っているA101、B203、C305、...シートは300シートくらいあります。 一覧表のシートには、下のような表になっていて、      A列  B列  C列  D列 ...          1003、1004、1005、1006、... 2行目 A101  3行目 B203 4行目 C305       .       .       . データのはいっているシート、A101は下の表になっています。      B列 C列 D列、・・・、Z列 2行目 1004、1005、1006、... 3行目 100、 200、 150、... 一覧表のB列の2行目には HLOOKUP(B2、シートA2のB2:Z3、2行目、FALSE) という感じで、シート名をセルA2のものを参照にして 探して表示させ、B列、C列、D列の2行目から下の行も 表示させたいのですが、うめくできませんでした。 INDIRECT関数を使ってみましたが、セル範囲が無効という エラーがでてしまいます。↓こんな感じで入力してみたのですが... SUMPRODUCT((INDIRECT($A2&"!$B$2:$Z$3"))=$B$1,(INDIRECT($A2&"!$B$2:$Z$3"))) 1つづつデータを見て手打ちはデータが多く、 どんどんデータが増えていくので できれば関数を使って表示させたいと思っています。 詳しい方いらっしゃいましたら、どうか教えてください よろしくお願いします。

  • エクセル 関数を使わずにデータを取りたい

    EXCELを使ってデータ入力をしたいです。 下の図のように、シート1のA列にコードを入力すると、シート2のテーブルから値を引っ張ってくるようにしたい。 たとえば、シート1のA1に"C001"を入力したら、B1に"赤"が自動入力されるようにしたい。 シート1 A列 B列 行1 C001 シート2 A列 B列 行1 C001 赤 行2 C002 青 行3 C003 黄色 ただし、シート1のB列の値は、入力後に編集するため、ここには計算式を入れたくないのです。 なので、通常ならばB列にVLOOKUP関数を使えばすむことですが、計算式を入れずに上記を実現する方法を教えてください。

  • エクセル関数

    二つの条件から抽出する関数INDEXとMATCHをつかって作ってみたのですが行と列からの抽出ではなく二つの列からの抽出を行いたいと思います。 シート1 (データが既に入っております。)    A   B   C 1 \100 a123 tana 2 \200 h456 taka 3 \120 k789 yogi 4 \250 b456 ume シート2    A   B   C 1  k789 yogi シート2のC列に¥120と抽出する関数をご教授ください。 宜しくお願いいたします。

  • エクセルの関数

    エクセルの関数ですが、 シート1の1行目は見出しが入っています。 C2~C267まで、あ店~け店までの9店舗の店名がランダムに入っています。 D2~D267まで、個人名が入っています。 いろんなデータが2行目から各列に入っています。 シート1のデータは日々更新します。 シート2にシート1のデータを反映したいのです。 シート2の1行目は見出し、 シート2のA2は あ店と入っています。A3~A54は空白(シート1に入っている あ店の個人は53人だという事でA3~A54は空白空白なっています。 A55に   い店  A56~A73は空白。 A74に   う店  A75~A93は空白。 A94に   え店 A95~A144は空白。 A145に  お店 A146~A161は空白。 A162に  か店 A163~A179は空白。 A180に  き店 A181~A212は空白。 A213に  く店 A214~A228は空白。 A229に  け店 A230~A254は空白。 シート2の  C列に シート1のM2から入ってる数値 0以下の人の名前をシート2のB2~B54までに データが0以下の人を入れ込みたいのです(よって、もし 0以下の人が10人だったら、B2~B11まで個人名が入って、B12~B54は名前は入らないて事になります) よって、シート2のB2~B54は、シート1の あ店のM列の 0以下の人を反映して表示したいのです 同じ要領で、シート2のD列にシート1のX列の数値の 1以上の人         シート2のE列にシート1のI列の数値の 1以上の人         シート2のF列にシート1の列の数値の 1以上の人 を反映して表示させたいのです このシート1は日々更新します シート2に随時反映するような関数を教えてください 宜しくお願いいたします

  • エクセル関数の自動表示について

    自動表示についてご質問いたします。 シート1 (3月入力時)       A列  B列  C列  D列  E列  F列  G列  H列 1行目  1月   2  10  11  12  30  31  33 2行目  2月   1   2   5   8   9  10  48 3行目  3月   3   5  10  11  30  31  32 4行目  4月   こういうシート1の表があったとします。 シート1で3月入力した時点で、シート2では以下の表があったとします。        A列  B列  C列  D列  E列  F列  G列   1行目    3   5  10  11  30  31  32 と、自動で表示され。 4月(シート1)に数値を入力すれば、シート2の数値が最新数値に自動で入れ替わる・・・と、いう関数を作りたいのですが、いい関数ありますでしょうか? この場合、シート1ではB列~H列の数字の個数は固定(今回は7個)であり、毎回ランダムで数字が入力されていきます。 これをシート2の1行目、A列~G列に最新数値を毎回反映させて、表示したいのです。 どなたか、ご存知の方よろしくお願いします^^;

  • Excelでどのような関数を使えばいいでしょうか。

    関数について教えて下さい。 Excelで、同じBook内に以下のような2シートがあるときに、 (Sheet1)    A   B    C   D     1  1  あい   12  りんご 2     うえ   34  みかん   3     おか   56  イチゴ 4  1  おか   78  イチゴ (Sheet2)    A   B    C    D     1     あい   11   りんご 2     うえ   34   みかん   3     おか   78   イチゴ 4     うえ   34   みかん  Sheet2のA列にSheet1にあるデータを入れたいのです。 まず、列B,C,Dのそれぞれのデータが横に3つ一致するものを探して 横3つのデータが同じなら、Sheet2のA列に、 Sheet1のA列にあるデータをシートBにも持ってくる、 というようなイメージです。 (Sheet2)    A   B    C    D     1     あい   11   りんご 2     うえ   34   みかん   3  1  おか   78   イチゴ 4     うえ   34   みかん      ↑このようにしたいのです。 A列にどのような関数を入れればいいのでしょう。 (A列にあるのは1か空欄かのどちらかです。 同じ3つの組み合わせで、1の場合と空欄の場合両方があることはありません。) また、Sheet2には、A列に1とついた行に色を付けたいのです。 例えば、上記の例ですと Sheet2のB3:D3のセルに色をつけたいのです。 関数や条件付書式などで、できますでしょうか。

  • Excelでこのようなときはどんな関数にすればよいでしょうか

    同じブック内で以下のような2シートがあるときに、 (シートA)    A   B    C    1  あい  123  りんご 2  うえ  456  みかん   3  おか  789  イチゴ (シートB)    A   B    C    1  あい  123  めろん 2  えお  456  みかん   3  おか  789  イチゴ 横に並んだ3項目が同じものにだけ、(シートB)のセルに色を付けたいのです。 (上記の例だと、3行目が3項目とも一致しているということです) 色は横3つのセルにつけられなければ、A列のセルだけでも構いません。 (上記の場合、色をつけたいのはシートB「おか」のセル) 列を増やすなど、処理用のデータが必要でも非表示にすればいいので その点は構いません。 関数や条件付書式などで、なんとかなりますでしょうか?

  • Excel 2003 関数 教えてください

    使用するのはExcel 2003です。 マクロは使用せず関数で実行したいです。 お詳しい方教えてください。 1シート目に元となる表があります。 B列~D列までにあらかじめクライアント情報が入っており、クライアント情報の数の分、行数があります。 A列には、担当者名の入力欄を設け、入力規則のリストで担当者1~5まで選択できるようにしておきます。    A         B              C             D    担当者名    クライアント企業名   クライアント部署名   備考   1            ○○○          △△△          ***    2            ○○○          ◇◇◇          +++      3            ×××          ■■■          ---    2シート目以降、各シートは担当者1~5別のシートになっています。 2シート目 担当者1 3シート目 担当者2 4シート目 担当者3 5シート目 担当者4 6シート目 担当者5 こちらのシートには、1シート目と同じ項目がA~D列まで並んでいます。 A列にはあらかじめそのシートの担当者名が入っています。 全シート、1行目が項目、2行目から下がデータ欄です。 1シート目のA列で担当者名を選択すると、選択された担当者シートのクライアント情報欄(B~D列)に、1シート目該当行のクライアント情報が、反映されるようにしたいです。 その際、2行目から空白行を作らずに反映していきたいです。 作業用の列やシートを作成しても構いません。 マクロを使用したくない理由は、この表を配布する先の使用者のExcelが2003と2013で混在しているためです。 どなたかお知恵をお貸しいただけると助かります。 どうぞよろしくお願いいたします。

  • エクセル 関数を使っての自動転記について

    ネットでいくつか検索してみましたが、こちらの検索方法が悪かったためかヒットしなかったので 改めてこちらで質問させて頂きます 今回の質問内容ですが、例えばの話シートAのA列の1行目に1組、2行目に2組、3行目3組と入力してあり、それがシートBのA列にも同じく1組、2組、3組・・と同じように表示したいというものです それだけでしたらイコールを使えば良いのですが、さらにシートAの1組、2組、3組と追加でその下の4行目に4組と入力した場合、シートBにも自動で3組の下の行に4組と入力されるようにしたいというものです (例えばの話なので1行目の文字がりんご、2行目の文字がみかんといったように数字以外になる事ももちろんあります) OFFSET関数やCOUNTA関数を使って、シートAの空白以外のセルを数えて、そのセル数分だけ シートBにデータが表示されるようにしたいのですが具体的な関数の組み合わせが分かりません 不明な点御座いましたら追記にてお答えしますのでお分かりになる方がいらっしゃいましたら ご教授の程お願いします

  • エクセルについてです。エクセルの関数でが、シート1にデータが入っていま

    エクセルについてです。エクセルの関数でが、シート1にデータが入っています。シート1の1行目には見出しがあり、2行目からは、データが入っています。A列には、店舗名12店舗あります、12店舗ありますが、日付がD行にあり、A列にはランダムに入っています。100行目まで入っています。B列には、データ(1)、c列には、データ2が入っています。  シート2には、1行目には見出し。A列には、店舗名、A2は、あ店。A3は、い店。A4は、う店。A5は、え店。A6は、お店。A7は、か店。A8は、き店。A9は、く店。A10は、け店。A11は、こ店。A12は、さ店。A13は、し店。と入っています。シート2には、シート1のA店の合計を。シート2には、シート1のB店の合計を・・・・・あとは、A13まで同じ要領で合計を入れたいのです。どうやったらいいですか?

専門家に質問してみよう