• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelでVBAで選択範囲の値のみを挿入)

Excel VBAで選択範囲の値を挿入する方法とは?

このQ&Aのポイント
  • Excel2010で作成された選択範囲のセルを別シートに参照しています。VBAを使用して、値のみを挿入する方法を教えてください。
  • 参照しているセルに数式が含まれている場合、現在のコードでは数式もコピーされます。値のみをコピーする方法はありますか?
  • また、指定した範囲に挿入する場合、Insertメソッドを使用することで挿入が行われますが、具体的な使用方法がわかりません。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>値のみをコピー private sub CommandButton1_Click()  worksheets("Sheet2").range("21:40").insert shift:=xlshiftdown  worksheets("Sheet2").range("A21:AB40").value = worksheets("Sheet2").range("A1:AB20").value end sub ぐらいでいいです。

yuko5367
質問者

お礼

出来ました。ご回答いただいたお二人のコードを交ぜて使ったらうまくいきました。 本当にありがとうございました。 また、よろしくお願いいたします。

yuko5367
質問者

補足

ご回答誠にありがとうございます。 早速試してみました。 値のみの複写も問題無く出来ています。そして続けてボタンを押しても問題無く出来ています。 ただ、もう一つだけお願いがあります。 最初のコードでセル範囲と同じだけのセルを挿入するからでしょうか、書式が反映されません。 参照範囲に一部書式を変更(セルの結合など)した部分があります。これも一緒に複写することは出来ないでしょうか? 値のみとか言っておきながら申し訳ありません。 ご伝授お願いいたします。

その他の回答 (1)

noname#200298
noname#200298
回答No.2

こちらでのコードの形ではいかがでしょうか? Private Sub CommandButton1_Click()  Sheets("Sheet2").Range("A1:AB20").Copy  Sheets("Sheet2").Range("A21:AB40").PasteSpecial Paste:=xlPasteValues  Application.CutCopyMode = False End Sub

yuko5367
質問者

お礼

出来ました。ご回答いただいたお二人のコードを交ぜて使ったらうまくいきました。 本当にありがとうございました。 また、よろしくお願いいたします。

yuko5367
質問者

補足

早速のご回答ありがとうございます。 試してみました。セル範囲のペーストはうまくいき、値のみが複写されますが、続けての挿入が出来ません。私の説明不足だと思いますが、ボタンを押す毎に挿入を続けたいのです。 でも、PasteSpecialの記述の仕方がわかりました。 あと、挿入(Paste)を続ける方法はありますか? 今回のご回答感謝いたします。

関連するQ&A

専門家に質問してみよう