アプリ版:「スタンプのみでお礼する」機能のリリースについて

VBAは全くの素人です。仕事でどうしても必要な設定のため、調べていたところVBAでできるのではないか、、、と行きつきました。
急ぎで対応が必要なため、どなたか詳しい方、ご教示いただければ幸いです。

サンプルですが、画像添付します。(簡単な社員リストです)
B〜F列:VLOOKUPの数式を設定
G列:固定フラグ(手動でコントロール)

G列に1がある行について、A~F列の値を同じセルにコピー&ペーストしたいです(値、書式貼り付け)
G列に1が無い5行目以降のB〜F列の数式は消さない

素人ながら、色々調べて、セルを選択した状態でマクロ実行する場合の値貼り付けは、
下記でできることが分かりました。
Sub Macro2()
 Selection.Copy
 Selection.PasteSpecial Paste:=xlPasteValues
 Application.CutCopyMode = False
End Sub

しかし、固定フラグがある場合に、該当する行について値のコピー&ペーストするにはどうしたらいいのか、で詰まっております。
条件つけるには「If」なんだと思いますが、条件に該当する行を選択し、コピー&ペーストする、という部分が上手く書けません。
どうぞよろしくお願いいたします。

「Excel(VBA) 特定の条件に該当す」の質問画像

A 回答 (1件)

こんばんは



ご提示の内容を、必要な行数だけ繰り返す処理にすればよいですね。

※ 社員番号のあるA列には空白はないものと仮定します。(=最終行の判断のため)

Sub Sample()
Dim rw As Long

For rw = 2 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(rw, 7).Value = 1 Then _
Cells(rw, 2).Resize(, 5).Value = Cells(rw, 2).Resize(, 5).Value
Next rw
End Sub
    • good
    • 0
この回答へのお礼

早々にご回答いただき、ありがとうございます。
サンプルの方でこちらの処理動かしてみたところ、うまくいきました!
本番のエクセルでもうまく動くかやってみようと思います!!

お礼日時:2022/05/22 00:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!