
エクセルで2つのファイルを比較し、編集上書きするマクロを教えて下さい。
マクロ・VBAを最近勉強し始めたものです。
まずデータの元となる、詳細データ(1)ファイルがあります。
毎日、CSV形式で新しいデータを取り込み、
取り込んだファイルは詳細は抜けているので、
詳細内容を調べて打ち込み、(1)にどんどん保存していっています。
CSVファイルで、特定のデータ(2)を取り込んだとき、
以前、詳細内容は調べて、(1)に入れているので
(1)から取り出して、(2)に記入するようにしたいです。
図で書くと
「ファイル(1)」
品番 価格 割引 担当 レジ
111 2000 500 小杉 山田
112 2500 600 三木 田中
113 3000 700 小杉 田中
「ファイル(2)」
品番 価格 割引 担当 レジ
111 2000
113 3000
のように、詳細内容がありませんので
エクセルのA行に記入されている品番で比較して、
B行以降はすべて上書きという作業をしたいです。
(1)と(2)は別ファイルですが、
別ファイルでの操作が難しければ、
同じファイル内の別シートに入れます。
この操作をする時のマクロを教えて下さい。
行き詰まって分からないのでお力を貸して下さい。
文章力がなく申し訳ありませんが、よろしくお願い致します。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
マクロの自動記録から修正してません。
添付図参照Sub Macro1()
Range("G1").Select 'G1セル選択
Selection.CurrentRegion.Select '[Ctrl]+[Shift]+[*]
Selection.SpecialCells(xlCellTypeBlanks).Select '[Ctrl]+[G]ジャンプ ●空白セル
Selection.FormulaR1C1 = "=INDEX(C[-6],MATCH(RC7,C1,0))" '数式を入力して[Ctrl]+[Enter]
End Sub
H2:K3セル(H2セルアクティブ)に入力した数式は
=INDEX(B:B,MATCH($G2,$A:$A,0))
[Ctrl]押しつつ[Enter]
あとは応用です。
>A行に記入されている
A列、B列と呼びます
>B行以降はすべて上書きという作業をしたいです
B列は入力されているようなら、上記マクロではあわない可能性があります。

No.1
- 回答日時:
まず最初に
個々の回答者はご質問者がマクロの何が分っていて何が分らないかが分りません
マクロを組む時の考え方のみの解説が必要なのか
全体のコードを回答としてほしいのか、一部のみで良いのか
コードの詳細な説明も必要なのか
マクロを使う必要もない状態、関数式のみで解決する場合でもマクロの回答が必要なのか
状況が見えません
行き詰ってわからないと言われても何で詰まっているかを明確にしないと丸投げ扱いと見なされます
前置きはこの辺で、回答ですが
質問の条件だけであればVLOOKUP関数の利用で解決します
どうしてもマクロ化したいのであれば
・B列以降にVLOOKUP関数での表示計算式を入力
・シート全体をコピーして値のみの貼り付け
上記動作をマクロの記録で記録すればマクロ化できます
この回答への補足
申し訳ありません。
コードを教えて頂きたく質問しました。
VLOOKUP関数だと、
エクセルのB行C行D行E行~とコピーしたい行が沢山あるけれども、
行ごとに1回1回関数を入力しないといけないと聞きましたので、
コードで、一度にできるのであれば、コードが良いと思った次第です。
もしよろしければ
関数だと、どういった関数式になるのか教えて頂けないでしょうか。
まだ、初歩的な事しか分かっていないのですが、
どうしても急ぎで必要で、
教えて教えてになってしまい本当に申し訳ありません…。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAを一度起動するとずっと出て...
-
マクロを消すマクロは不可能?
-
昨日まで動いていたエクセルの...
-
別のパソコンでエクセルのマク...
-
マクロを設定したのに、拡張子...
-
EXCEL マクロ クリップボードク...
-
エクセル2013vbaで、見えない名...
-
word2013でマクロが記録できない
-
エクセル終了時の保存確認メッ...
-
Excelが勝手にシート移動してし...
-
コピーしたファイルのマクロを...
-
エクセルで、ハイパーリンクを...
-
excelファイルに使われているVB...
-
VBA マクロ実行時エラー’1004Ra...
-
エクセルの関数を使って、セル...
-
excelでpersonal.xlsを常に開く...
-
個人用マクロブックについて
-
マクロでマクロを削除する
-
エクセルマクロ実行中に別ファ...
-
Excelマクロ ファイル名が変わ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで印刷する方法 エクセ...
-
VBAを一度起動するとずっと出て...
-
昨日まで動いていたエクセルの...
-
エクセル終了時の保存確認メッ...
-
excelファイルに使われているVB...
-
コピーしたファイルのマクロを...
-
別のパソコンでエクセルのマク...
-
Excelが勝手にシート移動してし...
-
【マクロ】宣言は、何のために...
-
Excelマクロ ファイル名が変わ...
-
【マクロ】エラーが発生⇒実行時...
-
VBA マクロ実行時エラー’1004Ra...
-
excelのマクロ実行でブロックさ...
-
エクセル2013vbaで、見えない名...
-
マクロを消すマクロは不可能?
-
エクセルマクロ実行中に別ファ...
-
EXCEL マクロ クリップボードク...
-
マクロを設定したのに、拡張子...
-
excelが別プロセスで起動してし...
-
アクセスでファイルを開いたと...
おすすめ情報