ここから本文です

VBAに詳しい方お願いします! 私はVBA初心者です!

ron********さん

2016/7/217:09:26

VBAに詳しい方お願いします!

私はVBA初心者です!

Excel上でテーブル2つをIDをキーにして結合し、新しいテーブルを作成する、
ということを行いたいと考えていますが、方法がわかりません…。

使用しているのはExcel2010です。

テーブル1
ID 氏名 Pass
kotoko1 市崎 123456
kotoko2 新崎 234567
kotoko3 三崎 345678
kotoko4 志崎 910456

テーブル2
ID 役職
kotoko1 市長
kotoko3 課長

目標のテーブル3
ID 氏名 Pass 役職
kotoko1 市崎 123456 市長
kotoko2 新崎 234567
kotoko3 三崎 345678
kotoko4 志崎 910456



何卒、よろしくお願いします!!

補足kotoko3に課長が入っていないのは入力ミスです!

この質問は、活躍中のチエリアン・専門家に回答をリクエストしました。

閲覧数:
21
回答数:
2
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

tra********さん

リクエストマッチ

2016/7/220:32:09

テーブル1 ・・・ シート1のA1から始まる表
テーブル2 ・・・ シート2のA1から始まる表
目標のテーブル3 ・・・ シート3のA1から始まる表
とすると、↓が1例。
シート3は、上書き。

Sub sample()
Const cFormula As String = "=IFERROR(VLOOKUP(A2,Sheet2!A:B,2,FALSE),"""")"
With Worksheets("Sheet3")
Worksheets("Sheet1").Range("A:C").Copy .Columns(1)
Worksheets("Sheet2").Range("B1").Copy .Range("D1")
With .Range("D2", .Cells(Rows.Count, 1).End(xlUp).Offset(, 3))
.Formula = cFormula
.Copy
.PasteSpecial xlPasteValues
End With
End With
Application.CutCopyMode = False
End Sub

  • 質問者

    ron********さん

    2016/7/223:21:40

    ありがとうございます!

    追加の質問なのですが、仮に役職が複数あって、
    その役職ごとに新しく行を追加したい場合、どの様にすればよいのでしょうか?

    また、役職がない場合は行そのものが追加されない、ということも出来るようにしたいです。

    すいません、よろしくお願いします。

  • その他の返信(2件)を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

質問した人からのコメント

2016/7/3 12:48:38

最初に回答して頂いたので、ベストアンサーとさせて頂ます!
ありがとうございました。

ベストアンサー以外の回答

1〜1件/1件中

nag********さん

リクエストマッチ

2016/7/217:47:03

テーブル3のkotoko3が「kotoko3 三崎 345678 課長」になっていないのは特別な理由があるのでしょうか?

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる