- ベストアンサー
罫線を除く全て貼り付けをマクロCtrl+Alt+Vしたい
ショートカットキーの余裕がありません。 Ctrl+Shift+v は「値のみ貼り付け」に使っています。 Ctrl+Alt+v で「罫線を除く全て貼り付け」をVBAでお願いできますか? 当方コピーするしか脳がありませんが。 また、マクロで[Ctrl]+[Alt]+[アルファベット文字]キーをショートカットキーに使えるような汎用型のBVAはできませんか? 以前PC相談で教わったのですが、Ctrl+Alt+矢印キーはセル増減で便利に使っておりますが、改造する能力はありません。 以下は参考コピーです。 ご回答者 2001/08/18 12:46 たっきー 様 改良者 2001/08/18 16:50 パリポ 様 Sub Auto_Open() Application.OnKey "^%{UP}", "DelUp" Application.OnKey "^%{DOWN}", "InsDown" Application.OnKey "^%{LEFT}", "DelLeft" Application.OnKey "^%{RIGHT}", "InsRight" End Sub Sub DelUP() Selection.Delete Shift:=xlUp End Sub Sub DelLeft() Selection.Delete Shift:=xlToLeft End Sub Sub InsRight() Selection.Insert Shift:=xlToRight End Sub Sub InsDown() Selection.Insert Shift:=xlDown End Sub
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんな感じでしょうか。 まずSub Auto_Open()のところに以下の記述を追加。 Application.OnKey "^%{v}", "PatexL" そして、以下のマクロを追加して下さい。 Sub PatexL() Selection.PasteSpecial Paste:=7 Application.CutCopyMode = False End Sub これで、対象セルをCtl+Cなどでコピーした後、ペーストしたい 位置でショートカットを使えば、「罫線を除く全て貼り付け」 ができます。 汎用、ということではないですが、[Ctrl]+[Alt]+[アルファベット文字]キー でショートカットを設定するには、 1.Application.OnKey "^%{(アルファベット文字)}", "<コマンド名>" を、Sub Auto_Open() 以下に追加。 2.Sub <コマンド名>() でしたい操作のマクロを書く。 という手順になります。 下のHPや、「マクロ ショートカット 登録」というキーワードで 検索すれば、ヒントはたくさん見つかりますよ。
その他の回答 (3)
- ChM
- ベストアンサー率56% (875/1559)
#1です。 申し訳ありません。実は私は、EXCELをほとんど使ったことがなく、従って本来のご質問もチンプンカウンプンで理解できません。#1の回答は、WORD(こちらは多用しています)でのマクロの登録の場合で、同じことがEXCELで出来るか否かについては、認識を有していません。 一応、WORD 2000 での設定方法について。 ツール→マクロ→新しいマクロの記録 で「キーボード」をクリック、「割り当てるキーを押してください」で、「Ctrl」と「Alt」を押したままで、「1」「A」もしくは「1」「B」などと押すことで、これが割り当てられます。 ただ、(私のパソコンでのみかもしれませんが)、そのマクロを実行するにあたって、「Ctrl」+「Alt」だと、Windows Meのときは問題ありませんでしたが、Windows XPにしてから、引っかかる感じでうまくいきません。ですから実情は、「Alt」+「A,A」、「Ctrl」「A,A」などの設定にしています。 念のためですが、上のは、そのようにしている、という例で、実際は「Alt」+「A」は「罫線」にあらかじめ割り当てられているので、「Alt」+「A,A」というマクロは作られていません。 もし、このWORDの設定がEXCELにも援用できれば嬉しいのですが、私にはこれ以上のアドバイス力がありません。
お礼
お手数をおかけしました。 当方はWORDが苦手です。作文はエディタで、プリントの際に時たまワードを使うぐらいです。行間などの設定はExcelに落とした方が自分には便利です。ワードって難しいです。いずれ必要に迫られたら、WORD2kで ご案内の方法をとってみます。 ありがとうございました。感謝申し上げます。
- moon00
- ベストアンサー率44% (315/712)
#2です。 Application.CutCopyMode = False があると動きませんでしたか。 何でだろう... 本筋には関係ない(?)構文なので、削除して貰っても構わないのですが。 コピー元の範囲を示す点線表示を消す構文(キーボードでEscキーを押すのと同じ)です。 今更ですが、こういう質問をされるときは、 OS、ソフト名、バージョンを書き添えておいた方が良いと思います。 質問内容からExcelと判断し、バージョンに左右されない 構文としましたが、 操作内容によっては、バージョン違いだと動かないものも ありますので。
お礼
ありがとうございます。そしてご無礼をいたしました。そこで VBエディタに 前回削除した Application.CutCopyMode = False を追加しました。何故か今度は うまく行きました。 コピー元の選択範囲が解放されるの便利です。使い勝っての良い 設計に感謝いたします。そしてごめんなさい。 まさかATOKの「A]が「あ」になっていたのかな~?それとは違うエラーのウインドでコピーしてなかったのが惜しまれますが、反省します、ごめんなさい。
- ChM
- ベストアンサー率56% (875/1559)
ご質問に回答する能力は、私にはありません。が「ショートカットキーの余裕がありません」というお言葉に、ちょっと引っかかりました。 仮に、[Ctrl]+[Alt]+[A]をマクロの1、[Ctrl]+[Alt]+[B]をマクロの2というように設定していくと、たちまちにして余裕がなくなります。 [Ctrl]+[Alt]+[A]そのものにはマクロを設定せず、[Ctrl]+[Alt]+[AA]をマクロの1、[Ctrl]+[Alt]+[AB]をマクロの2、というように設定すれば、設定可能数が飛躍的に増えます。 [Ctrl]+[Alt]+[1A]、[Ctrl]+[Alt]+[1B]、[Ctrl]+[Alt]+[11]、[Ctrl]+[Alt]+[12]、[Ctrl]+[Alt]+[A1]などにも設定可能です。ただしアルファベット(数字などを含む)は、2文字までです。 ちなみに、上のように設定した場合、既設定の[Ctrl]+[Alt]+[A]と[Ctrl]+[Alt]+[1]のマクロは無効になります。 見当はずれでしたら、ご免なさい。
補足
ありがとうございました それが出来たら願ったりです。でも,,,,,!!!! ????? [Ctrl]+[Alt]+[AB] と二文字は入力できません、どうやるのですか? ツール>マクロ>オプション でショートカットキーを設定していますが。 また数字は「半角アルファベットで無ければダメ」の警告ウインドが出ます。 Excel 2000です。
お礼
ありがとうございました。 うまく行きません。必要かどうか判りませんが、2行目からの文字下げなど土台の構文を参考にしましたが、ダメです。そこで、土台の構文には見あたらない Application.CutCopyMode = False の行を削除してみました。 すると大成功です。 ヤホー!て 感謝の気持ち一杯です。 教わる度に感じるこの うれしさは たまりません!!