振り分けて、別ブックの「同レコードの番号」に貼り付けるには?

このQ&Aのポイント
  • ブック1の3つの集合(変動あり)をブック2へ振り分ける方法
  • 集合1をB列、集合2をC列、集合3をD列に貼り付けるコードについて教えてください
  • ブック1とブック2のA列の数字の最大値は12です
回答を見る
  • ベストアンサー

振り分けて、別ブックの 「 同レコードの番号 」 に貼り付けるには?

「 ブック1 」 の3つ ( 変動あり ) の集合 ( 上から空白セルを挟んで、集合1、集合2、集合3 ) を 「 ブック2 」 へ  集合1 → B列    集合2 → C列    集合3 → D列 と、 「 同レコードの番号 」 に貼り付けるには、どのようなコードになりますでしょうか? (空白セルを入れたほうが、作業しやすいと私自身が思って、挿入しました。 また、2つのブックのA列の数字の最大値は 12 です。) 難しくて困っております。 何卒、ご教授願います。 ------------------------ 【ブック1】 A     B     C     D    ・     ・    ・     ・   8   ああ   7   ああ 4   ああ 3   ああ 1   ああ 12  ああ 11  ああ 4   ああ 2   ああ 10  ああ 9   ああ 8   ああ 6   ああ 5   ああ  ---- 【ブック2】 A    B    C    D     E・・・  1   ああ 2         ああ 3   ああ   4   ああ  ああ     5              ああ     6              ああ    7   ああ      8   ああ         ああ  9              ああ 10             ああ 11        ああ  12        ああ

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

  • ベストアンサー
  • NNAQ
  • ベストアンサー率56% (104/184)
回答No.1

「ブック2」のB1から貼り付けるとして、   Sub test() Dim bk01 As Worksheet, bk02 As Worksheet Dim r As Range Dim i As Integer, j As Integer Set bk01 = Workbooks("Book1.xls").Worksheets("Sheet1") Set bk02 = Workbooks("Book2.xls").Worksheets("Sheet1") Set r = bk01.Columns(1).SpecialCells(xlCellTypeConstants, 1) For i = 1 To r.Areas.Count With r.Areas(i) For j = 1 To .Rows.Count bk02.Cells(.Cells(j, 1).Value, i + 1).Value = .Cells(j, 2).Value Next j End With Next i End Sub 「ブック1」のA列に集合以外のデータがある場合は、 Set r = bk01.Columns(1) の、Columnsを、Endを使うなり適宜変更して下さい。

oshietecho-dai
質問者

お礼

質問内容を、一旦、撤回しようと思っておりました。 そして、何時間もかけて、「フィルタオプションの設定」で手作業にて40%ぐらいがやっとでした。 一瞬、疑いました。 言葉は、見当たりません、どうもありがとうございました。

関連するQ&A

  • ExcelVBA 名簿の別ブック(CSV)へコピーについて

    VBAは学生時代勉強したもののすっかり忘れてしまい、初心に返って現在参考書を読みながら取り掛かっていますが、 望むような動作が出来ず大変困っています。下記のようなデータを新規ブックAへある条件でコピーし、 CSVとして保存したく、試行錯誤中です。 (A:1)(G:15)までタイトル行にあったデータが入っている名簿があります。 (G:15)でデータは終了ですが、別の名簿も扱う事があり、別の名簿はデータの終了行は(G:15)とは限りません。 -------------------------------------------------------------- (A列)(B列) (C列) (D列) (E列) (F列) (G列)  No   姓    名  姓カナ  名カナ  年齢  性別  1  2  3  ・  15  空白  空白  空白  空白  空白  空白  空白 -------------------------------------------------------------- コピー条件 (1)データの開始行検索&終了行検索(空白セル) (2)データ内の検索(文字or数字) (3)データの開始行から終了行まで新規ブックAへ下記を繰り返す (4)A列のデータを新規ブックAへコピー (5)タイトル行のデータ入力(A列:同じ)(B列:名前)(C列:カナ) (6)B列+全角スペース+C列のデータを新規ブックAのB列へコピー (7)D列+半角スペース+E列のデータを新規ブックAのC列へコピー (8)G列のデータを新規ブックAのD列へコピー (8)F列のデータを新規ブックAのE列へコピー (9)新規ブックを本ファイル名+YYYYMMDD.csvでデスクトップへ保存 -------------------------------------------------------------- 図々しい質問ですが、具体的なコードのお知恵をお貸し頂けたら大変助かります。どうぞ、よろしくお願いいたします。

  • 違うブックを参照して、数値を表示するには?

    質問失礼します。 エクセルで保存した違うブックにあるデータから、複数条件で一致するものを検索し、表示することは可能でしょうか? 例えばブック1のG2に、ブック2のE1を表示させたいのですが、 条件が、ブック1のG2がある行の「B2とC2とD2とE2」の数値や文字列、空白などが、一致する行を,ブック2から検索し、その行にある、E1を、ブック1のG2に表示させたいです。 ブック1とブック2の一致させたい範囲 ブック1のB列、C列、D列、E列の行単位のセルと並び方=ブック2のA列、B列、C列、D列の行単位のセルと並び方 求めたい物 ブック2の条件にあったE列のセルをG列に表示したいです。 可能でしょうか? ブック1   A  B  C  D  E  F  G 1    8  a1 50  1 2    8  a1 50       30 3    8  a1 60       20 4    8  a1 70 20 5    3  b5 60 20     3 ブック2   A  B  C  D  E  F 1 8  a1 50    30  2 8  a1 50  1 3         4 8  a1 60    20 5 8  a1 70 20   6 7 3  b5 60 20  3

  • エクセル マクロで別ブックから転記するやり方

    エクセルでBook1(集計用)と、 店舗→Book2(大宮店)、Book3(東京店)・・・・・ 何店舗もあるんですがそれぞれの店舗のA30,B30,C30,D30の数字を Book1(集計用)のA列に並んだ店舗名のB列、C列、D列、E列に転記させたいと考えています。 今までは関数を入れて読み込ませていましたがこれをマクロで作成させる場合どのようにすればよいでしょうか? 何か他にいい案があれば教えていただきたいと思います。 よろしくお願いいたします。

  • 列挿入の時、セル参照を変化させたくないんです!!

    列挿入の時、セル参照を変化させたくないんです!! エクセル2003XP AというブックとBというブックが存在し、ブックBのあるセルを参照しブックAに出したり、ブックBのあるセルを使用しブックAで計算したりしています。 参照元のブックBに、たまに列を挿入することがあるのですが、参照先セルが自動で調整され、とりたいセルを変えてしまいます。   例えば・・・[B.xls]Sheet1!$C$7がB列に1列挿入されることで[B.xls]Sheet1!$D$7に変化 列を挿入しても参照先がC7のままにしたいのですが、どうしたらいいのでしょうか? お力をお貸しください。 宜しくお願いします<m(_ _)m>

  • エクセルで一致するをセルを参照して入力したい

    お世話になります。 わかりにくいタイトルで申し訳ないのですが以下の場合について教えてください。 A列に1,2,3,4,5・・・というように重複しない数字が入っています。 C列にも1,3,4・・・など重複しない数字が入っています。(1と3の間に空白セルはない) D列には任意の文字が入っています。 C列の数字と同じ数字は必ずA列には存在します。(逆にA列の数字がすべてC列にあるわけではない) ここであいているB列にその左のA列と同じ数字をC列から探し、その右側のD列の文字を入力したいのです。 (A列と同じ数字がC列にない場合は空白にする。) 例 A1:1 C列で「1」が入っているセルがC1、D1:みかん の場合 B1:みかん とする A2:2 C列に2がない場合 B2:空白 A3:3 C列で「3」が入っているセルがC2、D2:りんご の場合 B3:りんご とする この場合B列にはどのような計算式を入れておけばよいのでしょうか。 よろしくお願いします。 Excel2002です。

  • エクセル セル参照位置を自動検索する方法

    計算自体は単純な足し引きなのですが、図のとおり赤枠の数字はA1より青枠の数字はA5よりそれぞれC列の数字を引いた物です。単純に「D1=$A$1-C1」でも良いのですが、A列及びC列の個数及び行位置が変動することから例えばセル位置の参照が   「D3であれば3列前A列のA3より上にある空白でないセルA1を」   「D12であれば3列前A列のA12より上にある空白でないセルA5を」 とできる関数をどなたかお教え願いたく御願いいたします。

  • 空白セルのある場合の計算

      A  B  C  D   E  F  G  H 1 (2)     (2)     空     (3) わかりづらいかもしれませんが、 =A1+C1+E1+G1 で、数字の合計を出したいのですが、###のエラーが出ます。 E1の空白セルに数字が入るとエラーはなくなります。 どうしたら空白を0とみなして計算できますか? (空白セルはどうしても空白じゃなきゃなりません) (B列D列F列は計算対象外の数字が入力されてます)

  • 複数のBookから決まったセルの値を別のBookに

    お世話になります。 EXCELで複数のBOOKから決められたセルにある値を抽出してひとつのBOOKに纏めたいのです。 BOOK1~50、 BOOKには31枚のSheetがあります。 その中のSeet31にSeet1~30のデーターを纏めてあります。 Seet31の A1~3 B1~2 C1~3 のデーターを抽出して 新しく作ったBook【集計】のSeet1にBook1~50から抽出した データーを縦に並べたいのです。 【 例 】   A1 A2 A3 B1 B2 C1 C2 C3 1  5  2  4  3  6  7  1  3 2  2  3  4  6  9  7  5  2 3  7  8  5  6  2  3  1  8 と、いった感じです。 なお、Book名は『漢字+数字』です。 宜しくお願いします。

  • 番号が一致したら別の列の値を抽出したい

    こんばんわ。 Excelについて教えてください。 A列に数字が1~10と並んでおり、 C列には数字が穴あきで5つ(1,2,4,6,8)あったとし、 A列とC列を比較して比較し、数字が重複した場合は、 D列にある値をB列に抽出したいのですが、行番号を指定して 抽出する事なんてできますでしょうか? ↓こんな事をしたいです。 A列 B列 C列 D列 1  A  1  A 2  B  2  B 3     4  C 4  C  6  D 5     8  E 6  D 7 8  E 9 10

  • EXCELのブック間の抽出方法を教えてください。

    Aという集合ブックがあります。B~Eの個人ブックがあります。 今現在は、マクロの自動記録を使って B~EのブックのB6:F25のセルを自動で AのブックのB6以降のセルに順番に貼り付けてくるようにしてますが、 ブックによってはB15の行までしか入力が無いものもあり、 空白の行までコピーしてきて見辛くなってしまってます。 空白行は抽出しないようにしたいのですが 何かいい方法がありましたら教えてほしいです。 宜しくお願い致します。

専門家に質問してみよう