【シート内の項目内容】
・A.xlsmというエクセルに3つのシート(「A」「B」「まとめ」)があります。
・「A」シートには、1列目=手段、2列目=行先、3列目=車種、5列目=受注NO、7列目=受注数、9列目=備考1、10列目=備考2の項目にそれぞれのデータがあります。
・「B」シートには、1列目=車種、3列目=製造NO、4列目=在庫数、5列目=製品単量、6列目=備考3、7列目=備考4、6列目=備考5の項目にそれぞれのデータがあります。
・「まとめ」シートには、1列目=チェック、2列目=手段、3列目=行先、4列目=車種、6列目=受注NO、8列目=受注数、10列目=製造NO、11列目=在庫数、12列目=製品単量、14列目=備考1、15列目=備考2、16列目=備考3、17列目=備考4、18
列目=備考5の項目があります。
【やりたいこと】
(1)「A」シートのデータあるだけ、「まとめシート」同じ項目同士の場所に転記します。
(2)「B」シートの内容を「まとめシート」に転記した「A」シートのデータの横に、同じ項目同士の場所に製造NOのデータを転記します。
≪(2)の転記条件≫
①車種が一致。
②車種の受注数を確認して、この数字以内の数字の製造NOを、「B」シートの上から順番に転記していく。転記は受注数を満たせば完了。同時にチェック項目のそれぞれの製造NO行に〇をつける。
※受注数に対して在庫数を充てるのは受注NOの頭文字A=国内は±10%まで、B=海外は-10%までを条件に入れる
③それぞれの車種に、備考4(不良)、備考5(不具合)があれば、②の下に転記する
④それぞれの車種に、転記できていない車種の製造NOがあれば、最大さらに4つの製造NOのデータを③の下に転記する。
同時にチェック項目のそれぞれの製造NO行に予備をつける。
⑤車種が同じものがあった場合、必ず行先が国内か海外かで違う(見分け方は受注NOの頭文字A=国内、B=海外)のでこの場合、国内を優先して製造NOのデータを転記する。
ややこしい内容ですが、どうか宜しくお願い致します。
やりたいことの、before after の画像は下記のアドレスを参照ください
https://gyazo.com/b03414810b3feb10a5a690b166883eb7
No.1ベストアンサー
- 回答日時:
まず、(1)については比較的簡単な処理です。
以下の手順に従って、エクセルの関数を使用して、「A」シートのデータを「まとめ」シートに転記することができます。「まとめ」シートの2行目以降の各セルに以下の関数を入力します。
=IFERROR(INDEX(A!$E:$E,MATCH($F2&A!$A:$A&A!$B:$B,$A:$A&$B:$B&$C:$C,0)),"")
各行の2列目には手段、3列目には行先、4列目には車種を入力してください。
各行の6列目以降には必要に応じて受注NO、受注数、備考1、備考2などの項目を追加します。
これで、「A」シートのデータが「まとめ」シートに転記されます。
次に、(2)については、車種ごとに受注数を確認し、その受注数に対応する製造NOを「まとめ」シートに転記する必要があります。以下は、その手順です。
「まとめ」シートの2行目以降の各行に、以下の関数を入力します。
=IFERROR(INDEX(B!$C:$C,MATCH($D2&B!$A:$A,$C:$C&$A:$A,0)+COUNTIFS($D2&B!$A:$A,$C2&$A2,$C2&$A2&B!$C:$C,"<>"&""),$I2),"")
各行の2列目には手段、3列目には行先、4列目には車種を入力してください。
各行の8列目以降には、受注数、製造NO、在庫数、製品単量、備考1、備考2、備考3、備考4、備考5の項目を追加します。
各行の受注数のセルに、以下の関数を入力します。
=VLOOKUP($F2,A!$E:$I,5,FALSE)
これにより、各車種の受注数が「まとめ」シートの各行に自動的に表示されます。
各行の製造NOのセルに、以下の関数を入力します。
=IFERROR(INDEX(B!$C:$C,MATCH($D2&B!$A:$A,$C:$C&$A:$A,0)+COUNTIFS($D2&B!$A:$A,$C2&$A2,$C2&$A2&B!$C:$C,"<>"&""),$I2),"")
(2)の転記条件について補足説明を行います。
①車種が一致する場合、製造NOのデータを転記します。
例えば、Aシートに「スポーツカー」「S1」「モデルA」「受注数10」のデータがあるとき、Bシートには「スポーツカー」「M0001」「在庫数20」「製品単量1」「備考3」「備考4」「備考5」のデータがある場合、製造NO「M0001」のデータを「まとめ」シートに転記します。
ご連絡本当にありがとうございます。
関数でやれば行けるのですね。ありがとうございます。
もし可能ならば、本番のデータ量がかなり多いので、すべてVBAで対応したいとおもっております。そうなればどのようなコードを書けばよいでしょうか?ご迷惑をおかけしますが、宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VBAで、シート間の転記するコードを教えてください。 4 2023/03/26 10:43
- Visual Basic(VBA) VBAで、シート間の転記するコードをFOR~NEXTで教えてください。 9 2023/04/30 20:04
- Visual Basic(VBA) VBA シート間の転記で、条件の追加コードの書き方について教えて下さい。 13 2023/02/26 09:31
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- Excel(エクセル) vba シート名の一覧を2列に分けるには 5 2023/04/24 08:56
- Excel(エクセル) Excelの列から検索して該当する行を別シートに転記するVBA 2 2022/12/20 09:35
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Visual Basic(VBA) 【VBA】指定した検索条件に一致したら別シートに転記したい 2 2022/03/23 16:14
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- Visual Basic(VBA) マクロで最終行を取得したい 4 2023/05/28 12:14
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロの「SaveAs」でエラーが...
-
EXCELのSheet番号って変更でき...
-
マクロ実行後に別シートの残像...
-
Changeイベントで複数セルへの...
-
VBAで変数の数/変数名を動的に...
-
Count Ifのセルの範囲指定に変...
-
ExcelのVBマクロを、バックグラ...
-
RemoveDuplicatesメソッドにつ...
-
グラフマクロで系列を変数にす...
-
VBA 別ブックからの転記の高速...
-
100万件越えCSVから条件を満た...
-
2010 Excel VBA 測定結果を貼...
-
VBA 重複チェック後に値をワー...
-
GASでチェックボックスを一括of...
-
VBAでのピボットテーブルの範囲...
-
エクセル マクロ VBA Range Val...
-
テキストボックスから、複数の...
-
VBA 空白行に転記する
-
ExcelのVBA ListBox.RowSource...
-
FindNextがうまくいかない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マクロの「SaveAs」でエラーが...
-
EXCELのSheet番号って変更でき...
-
VBA 空白行に転記する
-
マクロ実行後に別シートの残像...
-
VBA別シートの最終行の次行へ転...
-
Changeイベントで複数セルへの...
-
Count Ifのセルの範囲指定に変...
-
ExcelのVBマクロを、バックグラ...
-
VBA 実行時エラー1004 rangeメ...
-
VBAで変数の数/変数名を動的に...
-
VBA 別ブックからの転記の高速...
-
Excel VBA オートフィルターで...
-
100万件越えCSVから条件を満た...
-
複数シートの複数列に入力され...
-
【VBA】特定の条件でセルをコピー
-
Excel2013で切り取り禁止
-
楽天RSSからエクセルVBAを使用...
-
アクセスからエクセルへ出力時...
-
グラフマクロで系列を変数にす...
-
FindNextがうまくいかない
おすすめ情報