[[20170202160559]] 『vbaでテキストボックス 文字改行するには』(azu) ページの最後に飛ぶ

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

 

『vbaでテキストボックス 文字改行するには』(azu)

下記のように記録をとりましたが
複数行に貼付したいのですが可能でしょうか?
よろしくお願いします。
通常のClick貼り付け
・契約時の内容メモ 日付 打合者 内容 範囲 契約額
決められた大きさ内、末尾で改行

これを以下のように
契約時の内容メモ
日付
打合者
内容
範囲
契約額
定型で貼付

Sub 契約内容メモ()
'
' Macro2 Macro
'

'

    ActiveSheet.Shapes.AddLabel(msoTextOrientationHorizontal, 700.25, 400.25, 72, _
        72).Select
    Selection.ShapeRange.TextFrame2.TextRange.Font.Size = 12
    Selection.ShapeRange.ScaleWidth 1.6136869286, msoFalse, msoScaleFromTopLeft
    Selection.ShapeRange.ScaleHeight 2.3511000874, msoFalse, msoScaleFromTopLeft
    Selection.ShapeRange.ShapeStyle = msoShapeStylePreset6
     Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = _
        "・契約時の内容メモ 日付 打合者 内容 範囲 契約額"
End Sub

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


 コードはもう少し整理できますが、とりあえず

 "・契約時の内容メモ 日付 打合者 内容 範囲 契約額"

 この部分を

 "契約時の内容メモ" & vbCrLf & "日付" & vbCrLf & "打合者" & vbCrLf & "内容" & vbCrLf & "範囲" & vbCrLf & "契約額"

 このように変えるとどうなりますか。

(β) 2017/02/02(木) 16:24


改行コードは、vbLfだけの方が良いでしょう。
別案で、いまのまま全角空白で区切っておいて、貼り付け時に文字列置換するとか。
     Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = _
        Replace("・契約時の内容メモ 日付 打合者 内容 範囲 契約額", " ", vbLf)
(???) 2017/02/02(木) 16:31

(β)さん
ありがとうございます。
MsgBoxと同じですか?
知りませんでした
マクロの記録ですとやたらと長いのですがまとまりますか?

(???)さん
ありがとうございます。
同様の結果が得られました。
助かります。
(azu) 2017/02/02(木) 16:39


 改行連結は、私がアップしたように直接文字列内で連結する方法、
 ??? さんが提示された ユニークな文字(全角スペースとか)にしておいて Replace 等
 いろいろ方法がありますね。

 ちょっとコードを整理してみましたが、その中では Join を使っています。
(整理といいましたけど、このケースでカットしてもいいのは ScaleHeight ぐらいですので
 今後のためにも残しました。)

 Sub Sample()
    With ActiveSheet.Shapes.AddLabel(msoTextOrientationHorizontal, 700.25, 400.25, 72, 72)
        .TextFrame2.TextRange.Font.Size = 12
        .ScaleWidth 1.6136869286, msoFalse, msoScaleFromTopLeft
        .ScaleHeight 2.3511000874, msoFalse, msoScaleFromTopLeft
        .ShapeStyle = msoShapeStylePreset6
        .TextFrame2.TextRange.Characters.Text = _
            Join(Array("契約時の内容メモ", "日付", "打合者", "内容", "範囲", "契約額"), vbLf)
    End With
 End Sub

(β) 2017/02/02(木) 17:08


(β)さん
ありがとうございました。m(_ _)m
便利になりました。
(azu) 2017/02/02(木) 17:35

コメント返信:

[ 一覧(最新更新順) ]


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