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

マクロ初心者です。
皆様に色々教えていただきながらやりたいことがようやくまとまってきたのですが
どのように記載すればよいのか解らず教えていただきたいです。

F列のセルに値が入っていたらその行全体をコピーして、別のブックの同じ行番号に貼付けしたいです。

例えば(F22)に値が入っていたら12行目全体をコピー
別のブックの12行目に貼付け

というのをやりたいです。
どのように記載するのか、もしくは検索ワードなど教えて頂けないでしょうか。
なかなか思っているものが検索しても出てこなくて悩んでおります。
ご教示いただけると幸いです。

A 回答 (1件)

こんにちは


こちらの派生かと思います。
https://oshiete.goo.ne.jp/qa/12181697.html

>例えば(F22)に値が入っていたら12行目全体をコピー別のブックの12行目に貼付け
値によって処理が変わると思います。
特定(一意)の値であれば関数やFindが良いと思います。
特定でない値(空白以外)であれば、フィルタであぶり出し("<>")や
FindNext、ループ処理でマッチングしていきます。
例えば
行番号=WorksheetFunction.Match(検査値,Columns("F:F"),0)、
行番号=Columns("F:F").Find(検査値).row
関数の解が行番号
ループであれば、カウント変数が行番号
for i =1 to cells(rows.count,"F").end(xlup).row
if cells(i,"F").value<>"" then
行番号=i
行番号が取得できれば

別ブック.Sheets("シート1").Rows(行番号).Copy _
ThisWorkbook.Sheets("シート1").Rows(行番号)

ループするにも検索するにも範囲が大きいと問題が生じると思います
範囲を狭めるか、取得、処理が早い配列に収めるかで行番号を取得した方が良いと思います。
    • good
    • 0
この回答へのお礼

ありがとうございます!こちらもとてもお礼が遅くなってしまいました。こちらも記載していただいている内容を理解するのに時間がかかりましたがこういうやり方があるのか!と勉強になりました。
本当にありがとうございました。

お礼日時:2021/02/07 19:10

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