[[20170503084112]] 『一つ左のセルをコピーするボタン』(k) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『一つ左のセルをコピーするボタン』(k)

excel2016で一つ左の文章を『改行も含めて』コピーするボタンを設置したいのですが、どのようにすれば良いでしょうか。

用途としましては、サポート業務で返信メール文章のテンプレートをexcelでまとめて、シートのボタンを一度押してコピー、メールの返信画面へ貼り付け、という風に使用したいです。

宜しくお願い致します。

< 使用 Excel:Excel2016、使用 OS:Windows7 >


質問のポイントがよくわかりません。

>『改行も含めて』

でしょうか?
現状できていることと、何が問題なのかを説明できますか。

わざわざマクロボタンを使わなくても、普通にセルをコピーするのではだめなのでしょうか。
と思ってしまいます。

(マナ) 2017/05/03(水) 09:50


改行も含めてとは、メールの長い返信文が、ただのセルコピーで貼り付けると横並びになってしまうからです。
セルを開く、文章を全選択する、コピーという風にやらないと改行込みで貼り付けられません。

こちら日に大量に送りますので、操作の簡略化の為にボタンで出来るようにしたい、ということになります。

何卒よろしくお願いします。
(k) 2017/05/03(水) 09:56


 貼り付け側でテキストだけ貼り付けることができるなら、それも一法でしょう。
 しかし、コピーする側で、
 Rangeオブジェクトではなく、テキストだけをコピーしたいということなら、
 DataObjectオブジェクトを使って操作する方法があると思う。

 そちらはよく目にするので、今回は趣向を変えて、
 テキストボックスのメソッドを利用する例を挙げてみます。
 (最近、DataObjectオブジェクトを使う場合に不具合があるらしいので、
   こちらのほうが安定しているかも知れないし、有益かもしれない。)

 【準備】
 ・個人用マクロブックに、(ActiveXの)テキストボックスを挿入しておく。
 ・以下のコードを  個人用マクロブックの標準モジュールにセットしておく。
 ・クイックアクセスツールバーに、以下のマクロを登録。

 Sub テキストコピー()
     Dim txtBox As Object
     Set txtBox = ThisWorkbook.Sheets(1).Shapes("TextBox1").DrawingObject.Object
     With txtBox
         .MultiLine = True
         .Value = ActiveCell.Offset(, -1).Value
      ''   .Value = ActiveCell.Value  
         .SelStart = 0
         .SelLength = Len(.Text)
         .Copy
     End With
 End Sub
 【実施手順】
 そうすれば、
 ・クイックアクセスツールバーのボタンを押し下げることで、
 ・アクティブセルのテキストがクリップボードにコピーされますから、
 ・メールソフトのメール作成画面に単純にペイストするだけでよいでしょう。

 【メモ】
 相手にするワークシート毎にボタンを作っていては面倒だろうから、
 個人用マクロブックに登録する方式にしてみた。
 そのあたり、必要なければ、個人用マクロブックを使う必要もない。
 適宜工夫していただきたい。

(γ) 2017/05/03(水) 10:19


メーラーの違いなのでしょうか?
例えばGメールで、コピペすると改行(セル内改行ですよね)も反映されますが。
わたしが何か勘違いしているだけかもしれません。

(マナ) 2017/05/03(水) 10:33


マナさんへ。(質問者から返答があると思いますが)
 
ご指摘のとおり、メールソフト依存だと思います。
Outlookですと、
>横並びになってしまうからです
とはならず、前後にダブルクオーテーションが入りますね。
改行はきちんとされています。
HTMLメールに強制変更して挿入する選択肢もありますが、
HTMLメールは避ける人が多いですね。

(γ) 2017/05/03(水) 10:44


γさん

確認ありがとうございます。

確かに、メモ帳にコピペしてみたら、
改行なし、ダブルクオーテーションあり
と、違う結果となりました。

(マナ) 2017/05/03(水) 11:04


ご回答ありがとうございました。
説明が不足していて、申し訳ありません
メールの返信に使用しているのは会社で導入している独自のシステムになります。

 【準備】
 ・個人用マクロブックに、(ActiveXの)テキストボックスを挿入しておく。
 ・以下のコードを  個人用マクロブックの標準モジュールにセットしておく。
 ・クイックアクセスツールバーに、以下のマクロを登録。

上記の内容に関しまして、恥ずかしながらexcelの知識が浅く、内容の理解に至りませんでした。
大変恐縮なのですが、上記の内容に関して解説しているサイトなどありましたら教えていただけないでしょうか。

これからexcelを勉強して色々と覚えて行く予定です。
何卒宜しくお願い致します。
(k) 2017/05/03(水) 11:22


マナさんへ。
ありがとうございます。
メモ帳は改行が無効になることがあるらしいですね。
(無効なのは表示だけで、メモ帳をさらに他のテキストエディターに
コピーペイストすると、改行表示が復活するらしい)
 
  
質問者さんへ。
ああそうでしたか。
でしたら書籍を購入することをお勧めします。
きっと大きな利益が得られる投資になると思います。
大型の書店に行って、ご自分の目で確認されたらよろしいかと。
 
急いでいるなら、Googleさんに
・個人用マクロブック
・ActiveXのテキストボックス
・クイックアクセスツールバー
などと入力して(そのままですやん)、検索してもよいでしょう。
 
ただし、ばらばらですからねえ。
まとまった書籍のほうがよいと思います。
(老人の趣味的嗜好かもしれないが)

(γ) 2017/05/03(水) 11:37


ご回答ありがとうございます。
やはり書籍のほうが良いですか、後ほど本屋に向かうので探してみます。

助言を頂き、ありがとうございました。
(k) 2017/05/03(水) 12:56


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.