
選択したセルでダブルクリックをするとエクセルマクロによりそのセルがコピーされて、メモ帳等のテキストエディタで貼りつけるとその値が出るようにしたいと思っています。
ほとんどイメージ通りにできたのですが、テキストエディタで貼りつけた値に加えて改行が入ってしまいます。
どのようにすると改行コードを消せますか?できないのなら、どのようにすればエクセルで任意のセルをダブルクリックをしたときに改行コードのないようにコピーできますか?
参考に現在のVBEで記述したコードを示します。
-----------------------------
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _
Cancel As Boolean)
Target.Interior.ColorIndex = 37
Cancel = True
Target.Copy
End Sub
No.2ベストアンサー
- 回答日時:
セル内改行を削除して貼り付けたいなら、こんなところでいかがでしょうか。
使用上の注意は参考URLをご覧下さい。Microsoft Forms 2.0 Object Libraryに参照設定要です。簡便にはUserformを挿入後、解放してしまえば、参照設定は残ります。'http://officetanaka.net/excel/vba/tips/tips20.htm
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim buf As String, CB As New DataObject
buf = Target.Value
buf = Replace(buf, vbLf, "")
With CB
.SetText buf
.PutInClipboard
End With
End Sub
ありがとうございました。
最初、DataObjectでエラーがでましたが、下記URLをみて「Microsoft Forms 2.0 Object Library」を導入して解決できました。
http://www.moug.net/tech/acvba/0020034.htm
>isual Basic Editorのメニューから[ツール]→[参照設定]コマンドを選択し[参照設定]ダイアログボックスで「Microsoft Forms 2.0 Object Library」にチェックを入れて、[OK]ボタンをクリックし、参照設定を行います。「参照可能なライブラリ ファイル」のリストにない場合は、[参照設定]ダイアログボックスで[参照]ボタンをクリックして「C:\WINNT(または Windows)\system32\FM20.DLL」を選択します。
No.1
- 回答日時:
参考URL は「クリップボードとデータのやりとりをする」です。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _
Cancel As Boolean)
Dim TempObject As MSForms.DataObject
Target.Interior.ColorIndex = 37
Cancel = True
Set TempObject = New MSForms.DataObject
With TempObject
.SetText Target.Value
.PutInClipboard
End With
Set TempObject = Nothing
End Sub
参考URL:http://www.moug.net/tech/exvba/0150091.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルVBA ダブルクリックしたら色反転を指定したセルのみにしたい 2 2022/04/06 12:52
- Visual Basic(VBA) Excelにて、シート1の行を削除するとシート2のシート1と同じ番号の行も削除したい 3 2022/05/08 04:24
- Visual Basic(VBA) エクセルのVBAでダブルクリックでチェックを入れたあと 1 2022/10/26 20:30
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Excel(エクセル) エクセルの自動更新のタイミングについて 1 2022/07/20 16:12
- Excel(エクセル) Excel2019 マクロを使用し画像を貼り付けした際のリンク切れについて 2 2022/11/15 16:14
- Visual Basic(VBA) エクセル VBAについて 2 2022/05/16 16:33
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/06/10 11:06
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エスケープ文字の復帰(¥r)と...
-
VBAのコマンドボタンの文字列の...
-
ソースコードの1行が長いとき...
-
jsp 改行コードで改行させて表...
-
変数の中の改行コードをBRタグ...
-
C++でのCRLFについて
-
vb.netでのリッチテキストボッ...
-
VBAでCSVをExcelに取り込む時に...
-
COBOLの改行
-
Excel VBAからBeckyを起動して...
-
改行コード2種類を混在させたい
-
texのchapterが改行される
-
delphi でのコード上でTab を入...
-
C# 文字列を改行コードで分割
-
グレープシティのSPREAD...
-
JavaDoc コメントの改行について
-
Eclipse(3.2.0)で複数にまたが...
-
awkで改行を除いて文字列を抜き...
-
改行について
-
改行コードが半角スペースにな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのコマンドボタンの文字列の...
-
ソースコードの1行が長いとき...
-
エスケープ文字の復帰(¥r)と...
-
C++で空Enterの入力を判...
-
VBAでCSVをExcelに取り込む時に...
-
改行について
-
改行を読み飛ばす
-
テキストボックス行の桁数を制...
-
C# DataGridViewのセルを改行禁...
-
LaTeX: captionの中で改行した...
-
JAVA System.out.println の ...
-
エクセルVBA 文字列領域が不足...
-
最終行の改行について
-
グレープシティのSPREAD...
-
【VBA】エクセルで最後の不要な...
-
jsp 改行コードで改行させて表...
-
ラベル(スタティックテキスト)...
-
1行ごとに取得して、その改行...
-
ファイルから読み取った改行文...
-
JavaDoc コメントの改行について
おすすめ情報