• ベストアンサー

エクセルで ctrl+d を使ったセルのコピーについて

お知恵を拝借させて下さい。 ctrl+d を使い、真上のセルの内容をコピーする場合に、 文字情報(文字およびフォント・サイズの情報)だけが コピーされるような方法はあるでしょうか? 毎行ごとに色を互い違いにして、行が見えやすいように しているので、セルの色がコピーされるとその処理を 行わないといけないためです。 よろしくお願いいたします。

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

  • ベストアンサー
  • -alphard-
  • ベストアンサー率100% (1/1)
回答No.1

はじめして。 フォント・サイズは書式となるため、背景色も含まれてしまいます。 文字だけでいいのであれば、 エクセルのマクロ機能を使用すれば、lionno25さんが行いたい事は 可能です。 まず、どこでもいいですがセルを選択した後「Ctrl + C」を押してください。 その後、キーボードの下「↓」ボタンを押してください。 次にマウスで、「ツール」→「マクロ」→「新しいマクロの記録」を選択します。 「Ctrl + C」を押した所が破線で表示されているはずです。 すると、「マクロの記録」画面が表示されます。 恐らくマクロ名は「Macro1」となっていると思います。 その下辺りに、ショートカットキーと書いてある箇所があります。 その欄に、例えば「e」を入力します。 その後に「OK」ボタンを押してください。 で、今選択されているセルがありますよね。 その上で右クリックしてください。 そして「形式を選択して貼り付け」を選択します。 すると、「形式を選択して貼り付け」画面が出ますので、 この中の「値」を選択して、OKボタンを押します。 この後、どこも触らないで、「ツール」→「マクロ」→「記録の終了」 これで、どこかのセルをコピーした後に、「Ctrl + e」で 貼り付け(ペースト)されますが、中身の文字だけがペーストされます。 背景色などの書式は引き継がれません。

lionno25
質問者

補足

-alphard-さん、早速の回答ありがとうございます。 試した見たのですが、マクロ登録の時に選択したセルでは 私が希望したいた通りの作業が問題なく上手く行く!の ですが、それ以外のセルに持って行って試してみると、 実行時エラー:1004 RangeクラスのPasteSpecialメソッドが失敗しました という事で、ダメになってしまいます。 上手くマクロの設定ができていないのでしょうか。。。

その他の回答 (3)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

こんなマクロと違いますか? '標準モジュール Sub SetKey()  'キーのセッティング   Application.OnKey "^d", "DownCopy" 'Ctrl + d の設定 End Sub Sub DownCopy() On Error Resume Next  With ActiveCell   .Cells = .Offset(-1).Value   .Cells.Font.Size = .Offset(-1).Font.Size  'サイズのコピー  End With On Error GoTo 0 End Sub

lionno25
質問者

お礼

ありがとうございます。 何とか試してみます。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

形式を選択して張り付け、のダイアロウグには、値(質問者が文字といっているもの、文字列の場合と数値の場合がある)、書式(その他に入力規則などもあるが)があります。「値と数値の書式」もあります。「書式」となっていますが、 「書式」には、フォント関係以外にもイロイロありますし、フォントにも、カラーやサイズがあります。 ここの「書式」には、ここでは「条件付書式」も含められるようです。 ーー (値は問題ないが、)ですから、「書式」の中のフォントサイズだけを引き継ぎ、他は引き継がないのは、できないでしょう。 コピーして入った、ClipBoadオブジェクトのFontSizeをつかめれば、VBAを使ってでもできそうな気がするが、 判らない。VBAで可能と言う回答が出ていますが、私にはマクロの記録程度でできるか疑問です。 Clipboad.textしか使ったことが無いのでわからない。 http://www.magictree.com/vbcourse/05menusdialogs/clipbrd.htm http://officetanaka.net/excel/vba/tips/tips20.htm

lionno25
質問者

お礼

回答ありがとうございます。 URL確認してみます。

  • -alphard-
  • ベストアンサー率100% (1/1)
回答No.2

「RangeクラスのPasteSpecialメソッドが失敗しました」と出るのは コピー元が選択されていない可能性がありますね。 コピー元を「Ctrl + C」にて選択しておく必要があります。

lionno25
質問者

お礼

再度ありがとうございます。 上手く行くこともあるんですが、一度 ファイルを閉じて(保存して)から、 再度開くとダメになってしまうようです。

関連するQ&A

  • エクセルのコピー

    エクセルのコピーが何かの拍子で出来なくなりました セル1つの内容をコピーしようとすると出来るのですが (1)そのセルに色がついていても色がコピーされない (2)結合されたセルをコピーした時には、コピー先は結合されない (3)行ごとコピーして、任意の行に”Ctrl””+”をしても  行は増えるが、内容なコピーされない といった形です 計算式等その他の処理はできるのですが、コピーのみおかしな設定に なってしまったので、設定を戻す方法を教えてください 宜しくお願いします

  • エクセルでコピーする時に

    シート1の内容をシート2にコピーしたいのですが。 値・フォント・フォントサイズ・フォントの色・太字・罫線・セルの塗りつぶしの色・図形が対象です。 シート1とシート2ではセルの大きさが若干違うのですが、それはそのままにしておきたいのですが。 全てを選択して普通にコピーすると、セルの大きさまでコピーされてしまいます。 また、値だけの貼付けだと、セルの大きさはそのままですが、コピーされないものが多々できてしまいます。 どうすれば、セルの大きさのみ除外してコピーできるでしょうか?

  • EXCELでの範囲コピー

    お世話になります。 エクセルのセルに以下のような文字が入っていたとします。 A B C D E 1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 CTRLを押して、1行目と3行目を選択してコピーをして、 別なシートに貼り付けると、前までは1行目と3行目だけが 貼り付けられたのですが、最近同じ作業をすると1行目と3行目の間の文字も すべてコピーされて貼り付けられてしまいます。 どうやれば、1行目と3行目だけをコピーできるでしょうか? よろしくお願いします。

  • エクセルの書式のコピー

    エクセルで送迎表を作成しています 1行目に 1Aから1Dまでのセルを結合し送迎表と記入 2行目から 2Aに“氏名” 2Bに“迎えの時間” 2Cに“ドライバー名 2D”に“送りの時間” といった見出しを HG創英角ポップ体 サイズ11で入力 3行目から10行くらいまで 氏名 時間などを記入した表です そのフォントは HGP明朝E サイズ14  時間を記入する欄は HSPゴシック サイズ14になっています これを 名前や時間のフォントをまとめて変更したいのです  ホームリボン内にある 書式のコピー 貼り付けを使ってやっているのですが このやり方で あっているのでしょうか? やり方は まずその書式にしたいセルを選択(例えば2Aのセル )→書式のコピーを押下 次に その書式にしたいセル(2Bから10B)を ドラッグで選択 この時 ドライバー名(2C~10C)もCTRLとともにドラッグ その後再度 書式のコピーを押下 何も変更がされません ちなみにドラッグが1列のみだと 書式が変更されます また この場合 A列全部を選択して 書式の貼り付けを行うこともできるのでしょうか? 1列目は セルの 結合をしていますが…… もともとの表の作成者が 見出しや時間などのフォントをバラバラに して作成したのですが 印刷してみると 文字が小さかったり ばらばらで 見にくいので 多数のセルのフォント(サイズも含め)を 変更したいのですが わたしのやり方は間違っているのでしょうか?間違っているようでしたら ご指摘お願い いたします またもっとよい方法などあれば 助言をお願いいたします 分かりづらい説明で申し訳ありません。状況が 伝わるとよいのですが…… OSはVISTA  OFFICE2007です 宜しくお願い致します

  • excelのセルの並べ替え。

    Excelの操作で迷っています。詳しい方の知恵を拝借できたらと思います。 以下のようにデータの入力されたセルが並んでいます(アルファベット1文字が1セルです)。 A B C D E F G H I J K 横に何セル並んでいるかは、行によってまちまちです。このようなデータが、数千行あります。これを、以下のように1列に並べ替えたいのです。 A B C D E F G 「行列を入れ替えてコピー」ではなかなかに大変なので、何か良い方法を探しています。よろしくお願いいたします

  • Excel セル内容を[Ctrl]+[A]で全選択

    Excel セル内容を[Ctrl]+[A]で全選択 環境:Windows XP/Excel2000 1つのセルに ABC DEF GHI と3行入力してあります。 このセルを別のブックのセルに転記したくても結合環境の違いなどでコピーできない場合、セルをダブルクリックしてから内容をドラッグなどしてコピーする方法があります。 しかしこの場合、ドラッグのミスで内容が欠落したり、コピー回数が多いとドラッグが面倒な場合があります。 できれば、セルをダブルクリックの後、[Ctrl]+[A]をしてセル内容を全選択したいのですが、出来ません。 ですので、セルをダブルクリックの後、[Ctrl]+[HOME]の後、[Shift]+[↓][↓][↓]などを考えてみたのですが、これも得策と思えません。 良い方法があれば教えてください。

  • (UWSC) エクセルのセルをコピーするには?

    UWSCで、エクセルにあるセルの中身をコピーしたいと 考えています。 getstrを使って、 a = GETSTR(GETID("Microsoft Excel","XLMAIN"),p)  (pは適当な数字) としましたがうまくいかないみたいです。 例えば、i行j列のセルにある文字をコピーするには、 どのようにすればいいのでしょうか? KBD(VK_CTRL,DOWN,32) KBD(VK_C,CLICK,31) KBD(VK_CTRL,UP,40) でもかまいません。

  • VB6とExcel2003の組み合わせで、セルのコピーがしたいのです

    VB6とExcel2003の組み合わせで、 例えば、A1~D10までの書式を、A21~D30に そのままコピーがしたいのです。 セルの結合や文字のフォントやフォントサイズ等 全てです。 つまり、2ページ目になる際に、ヘッダー等を コピーしたいのです。 どうすれば良いのでしょうか? 宜しくお願い致します。

  • 「Ctrl+b」でテキストだけをコピーするには

    Word2010で次の(a)~(d)の操作をすると、文字列がコピーされます。 (a)コピーしたい文字列を範囲選択する。 (b)Ctrl+c (c)文字列を挿入したい位置をクリックする。 (d)Ctrl+v 昔、Word2003だったと思いますが、(d)の代わりに「Ctrl+b」としてテキストだけをコピーしている人を見たことがあるのですが、Word2010でも「Ctrl+b」でテキストだけをコピーできるでしょうか。どうすればいいのでしょうか。

  • ビルダーでセルの属性のコピー

    ホームページビルダーを使っています。 バージョンは6.5と7です。 ・ビルダーで表を作成し、セルに色をつけます。 ・行を追加したときに追加した行には色がつきません。 ・上の行と同じ色にしたいとき、どうすればいいですか? 私が試した方法は、 ・上のセルについている色を調べ、同じ設定にする。→いちいち面倒 ・属性のコピーみたいなものが無いかと調べた。→ページや文字はあるが、表のセルの属性をコピーするものが無い。 このあたり、皆さんはどうしてみえますか? よろしくお願いいたします。

専門家に質問してみよう