• ベストアンサー

EXCEL VBA 文中の書式ごと複写するには

EXCEL VBAのプログラミングについて教えてください。 セルA1とセルB1が結合されており、セルには「あいうえお」と入力されています。 入力された「あいうえお」の内、「いうえ」は赤文字+太字を設定したと仮定します。 その結合されたセルの文章と文字色+太字を、結合されていないA3というセルに複写する場合、 下記の様なコードを考えてみましたが、長文になると処理が遅いので知恵を貸してください。 Range("A3").Value = Range("A1").Text For i = 1 To Len(Range("A1").Text)   Range("A3").Characters(i, 1).Font.Color = Range("A1").Characters(i, 1).Font.Color   Range("A3").Characters(i, 1).Font.Bold = Range("A1").Characters(i, 1).Font.Bold Next i よろしくお願いします。

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

  • ベストアンサー
  • tom11
  • ベストアンサー率53% (134/251)
回答No.1

こんにちは、 Range("a1").Copy Range("a3").PasteSpecial xlPasteAll で、どうでしょう。

HaruXP
質問者

お礼

参考にさせて頂きました。 ありがとうございました。

その他の回答 (2)

  • hotosys
  • ベストアンサー率67% (97/143)
回答No.3

結合されたセルの値やその属性は一番左上のセルの値として保存されていたと思います。 なので Range("A1").Copy Range("A3") でいいのでは?

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.2

・B3に値がなければ、一旦コピペしてから結合を解除する。 ・B3に値があれば、一旦変数に取り込んでコピペし、結合を解除してからB3に代入する。 とかかな???

関連するQ&A

専門家に質問してみよう