• ベストアンサー

エクセル マクロで値の貼り付けは?

A1をB1にコピーする場合、 Sub Macro1() ' Macro1 Macro Range("A1").Copy Range("B1") End Sub となりますが、これを貼り付ける時に「値のみ貼り付け」はどうすればよいのでしょうか。

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

  • ベストアンサー
  • myRange
  • ベストアンサー率71% (339/472)
回答No.1

値のみであれば、Copyメソッドは不要です。 単純に、"=" で代入すればいいです。  Range("B1").Value = Range("A1").Value 複数セルの場合は、  Range("B1:B5").Value = Range("A1:A5").Value とか。 以上です。  

SORAN27
質問者

お礼

ありがとうございます。 お礼が遅くなって申し訳ありません。 解決しました。

その他の回答 (1)

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.2

「形式を選択して貼り付け」の「値」で貼り付けを「マクロの記録」すればコードが得られます。 Range("A1").Copy Range("B1").PasteSpecial Paste:=xlPasteValues, _ Operation:=xlNone, SkipBlanks:=False, Transpose:=False 上記で、PasteSpecialの余分なパラメータを省略して Range("A1").Copy Range("B1").PasteSpecial Paste:=xlPasteValues Excelが、コピーモードになるので、実行後にコピーモードを解消 Application.CutCopyMode = False あるいは、Copyせずに Range("B1").Value = Range("A1").Value と出来ます。 こちらは、コピーモードにはなりません。

SORAN27
質問者

お礼

ありがとうございます。 お礼が遅くなって申し訳ありません。 解決しました。

関連するQ&A