みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

vbaで、オートシェイプ文字列、各下線取得について

動作環境
OS:Windows7(64Bit) Home Premium SP1
MS:Office Version2007 SP3

Excel図形内のテキストの編集で、マウスをドラッグしてテキストの領域を選択後、コンテキスト
メニューから、フォント(F)-フォント(設定ダイアログ)画面-[フォント]タブ上に、下線のスタイルが、
複数あります。
テキスト設定した場合、vba上から下線のスタイルを取得する方法が、知りたいです。
大体、目途は、付いています。
どなたか、ご指導願います。

■現在、自分が、分かっている下線のスタイルを取得するPG
下記の方法ですと、MsgBoxで、.Font.Underline=2が取得されます。
For Each wkbWorksheets In ActiveWorkbook.Worksheets
For Each wksShapes In wkbWorksheets.Shapes
With wksShapes.TextFrame.Characters
MsgBox .Font.Underline
End With
Next wksShapes
Next wkbWorksheets

※「1.」~「16.」で、下線のスタイルをvbaから取得するには?
1.一重線
2.二重線
3.太線
4.点線
5.太点線
6.破線
7.太破線
8.長破線
9.長太破線
10.一点破線
11.太一点破線
12.二点破線
13.太二点破線
14.波線
15.太波線
16.二重波線

投稿日時 - 2014-10-26 10:54:36

QNo.8803469

困ってます

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

 すみません。もう一か所書き換えていたのにうっかりコピーし忘れていました。
With wksShapes.TextFrame2.TextRange.Characters
MsgBox .Font.UnderlineStyle

Excel 2007でも確認しました。

投稿日時 - 2014-10-26 16:08:59

このQ&Aは役に立ちましたか?

8人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

面倒なので最初のほうと最後だけ調べてみましたが
なし0の次は一重線2 二重波線17のようでした。
もしかすると1がないのかもしれません。調べてみてください。
MsgBox .Font.UnderlineStyle

Windows8.1  Office2013です。

投稿日時 - 2014-10-26 11:35:28

補足

>MsgBox .Font.UnderlineStyle
Excel(Office)2007ですと、下記のエラーが出ます。
--------------------
実行時エラー'438'
オブジェクトは、このプロパティまたはメソッドをサポートしていません。
--------------------
更なる、ご指導願います(__)。

投稿日時 - 2014-10-26 14:50:37

あなたにオススメの質問