• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:行をコピーして挿入する際のコピー時点滅をなくしたい)

Excelマクロでコピー時の点滅をなくしたい

このQ&Aのポイント
  • Excelのマクロを使ってコピー時の点滅をなくしたいです。質問文章の中では、コマンドボタンを利用してカードを使用した件数に合わせて行を挿入していますが、コピーする際に点滅が出て邪魔で気になります。Application.CutCopyMode = Falseを入れたりしましたが、点滅が消えません。解決策を教えていただきたいです。
  • Excelのマクロを使ってのコピー時の点滅の解消方法を教えてください。質問文の中では、コマンドボタンを使ってカードを使用した件数に合わせて行を挿入していますが、コピーする際に点滅が出て気になります。Application.CutCopyMode = Falseを試しましたが、点滅は消えません。どのようにすれば点滅をなくすことができるでしょうか。
  • Excelのマクロを使ったコピー時の点滅を消す方法を教えてください。質問文章の中では、コマンドボタンを利用してカードを使用した件数に合わせて行を挿入していますが、コピーする際に点滅が出て邪魔で気になります。Application.CutCopyMode = Falseを試しましたが、点滅は解消されませんでした。どのようにしたら点滅をなくすことができるでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.3

Copy メソッド に Destination を指定してコピーすれば、点滅しません。 Private Sub CommandButton1_Click()   insertRow = InputBox("何行目の下に挿入しますか?") + 1   Rows(insertRow).Insert   Rows("2:2").Copy Rows(insertRow) '  Rows(insertRow).Select End Sub

kenken0126
質問者

お礼

アドバイスありがとうございます!(すみません、コメントが更新出来てないようでした) 理想通りの結果となり、大変助かりました。 Rows("2:2").Copy Rows(insertRow)←の部分が肝となるかと思います。知識がないのでCOPYメソッドについて学習しようと思います。 どうもありがとうございました。 また質問を投稿する事が多々あるかと存じますが、その際は是非よろしくお願いいたします。

その他の回答 (2)

  • tsubuyuki
  • ベストアンサー率45% (699/1545)
回答No.2

当方の2003・2010共に、 コピー領域の点滅を止めるのも含めて、綺麗に動きましたよ^^ (インプットボックスをキャンセルすると、当然、エラーが起きますが^^;) 練習、と言うのであれば、このままで十分だと思います。 処理順・・・InputBoxの位置ですが、私は無理に変えなくても良いと思いますよ。 点滅させてからインプットボックスの方が、 「この領域(行)をコピーしまっせ」が明確ですからね。 まぁでもあえて言うなら、 私なら ・コピーする行(2行目)を選択(Select) ・インプットボックス ・コピー   以下続行 の順にするかなぁ、と言う感じです。 つまり Private Sub CommandButton1_Click() Dim insertRow As Long   '変数は名前・型を宣言する癖をつけた方が良いですよ   Rows("2:2").Select   insertRow = InputBox("何行目の下に挿入しますか?") + 1   Selection.Copy   Cells(insertRow, 1).Insert shift:=xlDown   Application.CutCopyMode = False   Rows(insertRow).Select End Sub こうですね。 これなら、点滅も気にならないですしね。

kenken0126
質問者

お礼

返信遅くなりすみませんでした。 続いて試してみました。仰る事が分かり易くて 大変勉強になりました。 アドバイス頂いた Dimシリーズ(自分で呼んでますw)で、変数やら宣言やらさっぱり意味するところが分からないんで、マクロに対して拒否反応があったのですが、ちょっとだけ感覚で理解出来た気がします。また質問する事が多々あるかと思いますが、その際はどうぞよろしくお願いいたします。 ありがとうございました(#^.^#)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

InputBoxの位置を変えてみて下さい。 Rows("2:2").Select Selection.Copy insertRow = InputBox("何行目の下に挿入しますか?") + 1 ↓ insertRow = InputBox("何行目の下に挿入しますか?") + 1 Rows("2:2").Select Selection.Copy

kenken0126
質問者

お礼

ここを使うのも初めてで、回答に気づくのが遅くなりました。 早速試してみましたが、バッチリでした。 シンプルな回答でありがたかったです ありがとうございました(#^.^#)

関連するQ&A