転記のVBAで現在作成しているコードに、さらに条件を追加させたいコードがあり、どう書けばいいか分かりませんのですみませんが、教えて下さい。
現在記入している内容、及びコードは下記の通りです。
《内容》
①転記先のA,E,F,H,I列初期化
②転記先の最終行を取得
③転記元と転記先の車種が一致していれば、車種数を確認
④転記先の車種が何処の行にあるか確認
⑤転記先に貼り付ける車種の種類で1行間隔をあける
⑥転記元から、転記先へ同じ車種の場所に製造NOを転記
※転記する場所は、転記元、転記先共に同じ項目で、転記先のE,F,H列になります。
※転記する転記元のC,D,F列で、C列は番号が若い者順になっており、必ず番号の若い物から転記します。
《VBAコード》
Sub 転記()
Dim 車種行 As Long
Dim 転記元車種行 As Long
Dim 転記元車種数 As Long
Dim 転記元 As Worksheet
Dim 転記先 As Worksheet
Application.ScreenUpdating = False
Set 転記元 = Sheets("在庫一覧")
Set 転記先 = Sheets("まとめ")
転記先.Select
転記先.Range(Cells(6, 1), Cells(9999, 1)).ClearContents
転記先.Range(Cells(6, 5), Cells(9999, 6)).ClearContents
転記先.Range(Cells(6, 8), Cells(9999, 9)).ClearContents
With 転記元
For 車種行 = 転記先.Cells(Rows.Count, 2).End(xlUp).Row To 6 Step -1
転記元車種数 = Application.CountIf(.Range("A:A"), 転記先.Cells(車種行, 2))
転記元車種行 = Application.Match(転記先.Cells(車種行, 2), .Range("A:A"), 0)
転記先.Rows(車種行 + 1 & ":" & 車種行 + 転記元車種数).Insert
転記先.Cells(車種行, 5).Resize(転記元車種数, 3) = 転記元.Cells(転記元車種行, 3).Resize(転記元車種数, 3).Value
転記先.Cells(車種行, 8).Resize(転記元車種数, 6) = 転記元.Cells(転記元車種行, 6).Resize(転記元車種数, 6).Value
Next
End With
Application.ScreenUpdating = True
End Sub
上記のコードは単に転記元から転記先に、車種が一致していれば、その車種があるだけ1行開けて、製造NOを転記しているだけになります。
このコードに下記の条件を入れるにはどういうコードを入れれば良いでしょうか?
≪教えていただきたい条件のVBAコード≫
転記後、まとめシートで、それぞれの車種において、D列=必要重量とF列=部品重量が同じ、かつF列=部品重量が±10%以内、かつH列=不良品が"不良"以外の物であれば、A列=状態に"○"を付ける。"○"以外は"他"と入力し、かつI列=結果に"なし"と入力する。これらの条件に合わない場合は、転記したE,F,H列のデータをD列=必要重量に合う様に、行間で入れ替える。
詳細は画像を参照ください。
すみませんが、宜しくお願い致します。
No.3
- 回答日時:
見出しの確認です。
在庫一覧シートの
A列:車種
B列:型式
C列:製造No
D列:部品重量
E列:不明
F列:不明
G列:不明
まとめシートの
A列:重量
B列:車種
C列:型式
D列:必要個数
E列:製造No
F列:不明
G列:不明
H列:不明
I列:不明
①上記で、不明 となっている個所の提示をお願いします。
②上記で、不明以外の列は、この名称であってますでしょうか。
ご連絡ありがとうございます。
すみません、下記に転記させていただきます。
在庫一覧シートの項目は下記になります。
A列:車種
B列:型式
C列:製造No
D列:部品重量
E列:備考1
F列:備考2(不良品)
G列:備考3
まとめシートの項目は下記になります。
A列:状態
B列:車種
C列:型式
D列:必要個数
E列:製造No
F列:部品重量
G列:部品単量
H列:不良品
I列:結果
になります。
よろしくお願い致します。
No.2
- 回答日時:
No1です。
画像のアップありがとうございました。
まだ、仕様の詳細を検討していませんが、
現行の仕様では、まとめのシートを変更するようになっていますが、以下のようにしても良いでしょうか。
出力用に新規のシートを作成し、そのシートへ作成する。
シート:まとめは参照のみとし変更しない。
上記のようにする利点ですが、マクロを何回でも実行ができることです。
現行の場合だと、一度マクロを実行すると、シート:まとめ が更新され、
再度マクロの実行ができなくなってしまいます。
上記で良ければ、マクロの提示可能です。その場合は、新規のシート名の提示もお願いします。
早急のご連絡本当に感謝しております。
はい、ご提案いただいた内容でかまいません。
新規のシート名は、何でも大丈夫ですが、「転記先」でもよろしいでしょうか?
ご迷惑をおかけいたしますがよろしくお願い致します。
No.1
- 回答日時:
画像がよく見えません。
(このサイトは大きい画像をアップするとぼやけてしまいます)画像をgyzo.comへアップすると鮮明な画像が表示可能です。
gyzo.comへアップされてはいかがでしょうか。
以下は、アップした画像のサンプルです。(画像の内容は本件とは関係ありません)
https://gyazo.com/0bd339bb5dd086e92152bd17a351376d
ご連絡ありがとうございます。また確認していただきありがとうございます。こんなアプリがあったとは知りませんでした。貼り付け直します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAで、シート間の転記するコードをFOR~NEXTで教えてください。 9 2023/04/30 20:04
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- Excel(エクセル) VBAで、シート間の転記するコードを教えてください。 4 2023/03/26 10:43
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) 3つの条件を指定してVBAで行を削除したい 条件1:分類1が重複 条件2:分類2が重複 条件3:個数 6 2022/06/24 11:07
- Visual Basic(VBA) マクロで最終行を取得したい 4 2023/05/28 12:14
- Visual Basic(VBA) コード名シートA列と集計シートA列のコードが一致したら、コード名シートA5からk12の範囲をコピーし 1 2022/08/29 23:46
- Visual Basic(VBA) 【VBA】特定のワードが入っている行全体を塗りつぶしたい 4 2022/04/20 15:22
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロの「SaveAs」でエラーが...
-
VBA 空白行に転記する
-
VBA 別ブックからの転記の高速...
-
EXCELのSheet番号って変更でき...
-
マクロ実行後に別シートの残像...
-
VBAで変数の数/変数名を動的に...
-
ExcelVBAでDo Until loopのネス...
-
Changeイベントで複数セルへの...
-
VBA別シートの最終行の次行へ転...
-
VBA 実行時エラー1004 rangeメ...
-
VBA 重複チェック後に値をワー...
-
テキストボックスから、複数の...
-
vba 住所で判断して担当支店に...
-
GASでチェックボックスを一括of...
-
楽天RSSからエクセルVBAを使用...
-
ExcelのVBマクロを、バックグラ...
-
複数シートの複数列に入力され...
-
前回質問の続きになりますが、...
-
VBA Userformで一部別シートに...
-
VBAコードについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マクロの「SaveAs」でエラーが...
-
VBA 空白行に転記する
-
EXCELのSheet番号って変更でき...
-
マクロ実行後に別シートの残像...
-
VBA 別ブックからの転記の高速...
-
VBA別シートの最終行の次行へ転...
-
【VBA】特定の条件でセルをコピー
-
Count Ifのセルの範囲指定に変...
-
100万件越えCSVから条件を満た...
-
楽天RSSからエクセルVBAを使用...
-
VBAコードについて
-
Changeイベントで複数セルへの...
-
VBAで変数の数/変数名を動的に...
-
Excel2013で切り取り禁止
-
グラフマクロで系列を変数にす...
-
VBA 実行時エラー1004 rangeメ...
-
ExcelのVBマクロを、バックグラ...
-
Unionでの他のシートの参照につ...
-
Excel VBA オートフィルターで...
-
アクセスからエクセルへ出力時...
おすすめ情報
画像が見にくい状態でしたので、下記に再度添付します。
よろしくお願いします。
https://gyazo.com/ce22f43a942ab9decc5c7c9b83e01266
お世話になります。
現在テストしてますが、うまくいかず、、すみませんが、処理の内容を教えていただけないでしょうか?
よろしくお願い致します