Excel VBA 質問スレッド №1573 (解決済)

繰り返し処理が出来ない

投稿者 : なな     投稿日時 : 2023/09/19(Tue) 10:29:19     OS : Windows 11     EXCEL : Office 365
大変恐れ入ります。
サンプルシートのH列に「印刷」と入った行のデータのシートのみを複製し、
A列が空欄になるまで繰り返したいのですが、以下の文では「印刷」と入った
最初の行のシートだけが複製され、その下まで処理が進みません。

繰り返し処理を行うには、何が足りないでしょうか。

****************************************

For i = 5 To Cells(5, 1).End(xlDown).row

Mrk = Cells(i, 7)

    '元シートを、最終シートにコピー
  If Mrk = "印刷" Then
  Sheets("サンプル").Copy after:=Sheets(Sheets.Count)
    'リストの名前を入力
    Range("B1") = Sheets("一覧").Cells(i, "A")
    'シート名を変更
    ActiveSheet.Name = Sheets("一覧").Cells(i, "A")
    End If
 Next
 
End Sub

スポンサーリンク
[返信 1] Re : 繰り返し処理が出来ない
投稿者 : さんこう     投稿日時 : 2023/09/19(Tue) 10:37:09
>その下まで処理が進みません。

アクティブシートが変わってしまったので、
これ→「Mrk = Cells(i, 7)」は、
違うところを見ています。

[返信 2] Re : 繰り返し処理が出来ない
投稿者 : なな     投稿日時 : 2023/09/19(Tue) 10:54:32
■[返信 1] さんこうさん(2023-09-19 10:37:09)の記事
> >その下まで処理が進みません。

> アクティブシートが変わってしまったので、
> これ→「Mrk = Cells(i, 7)」は、
> 違うところを見ています。

さんこう様、早速ご回答をいただきまして誠にありがとうございます。
ご指摘の行を以下に変更したところ成功いたしました。
非常に助かりました!

Mrk = Cells(i, 7) ⇒ Mrk = Sheets("一覧").Cells(i, 7)

当掲示板について
  • Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
  • 記事内ではHTMLのタグは使用できません。
  • 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
  • Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
  • Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
お 名 前  :
内  容   :

ステータス  :

認証コード  : キャプチャ画像 




( 処理日時 : 2023-10-02 01:24:12 )
タイトルとURLをコピーしました