VBAマクロで使用できるオートシェイプの文字列の下線について解説

このQ&Aのポイント
  • VBAマクロを使用してExcelの図形内のテキストの編集を行う際、オートシェイプの文字列の下線のスタイルには複数の種類があります。これらの下線の表意定数を知りたい場合、以下の一覧を参考にしてください。
  • 各下線の表意定数は、一重線(xlSingle)、二重線(xlDouble)、太線(xlMedium)、点線(xlDot)、太点線、破線(xlDash)、太破線、長破線、長太破線、一点破線(xlDashDot)、太一点破線、二点破線(xlDashDotDot)、太二点破線、波線、太波線、二重波線の順です。
  • 上記の表意定数の一部には、未知の情報や間違いが含まれている可能性があるため、注意が必要です。正確な情報を知りたい場合は、詳細な資料や専門家の意見を参考にすることをおすすめします。
回答を見る
  • ベストアンサー

vbaマクロ、オートシェイプの文字列各下線について

動作環境 OS:Windows7(64Bit) Home Premium SP1 MS:Office Version2007 SP3 Excel図形内のテキストの編集で、マウスをドラッグしてテキストの領域を選択後、コンテキスト メニューから、フォント(F)-フォント(設定ダイアログ)画面-[フォント]タブ上に、下線のスタイルが、 複数あります。 訳が合って、この各下線の表意定数を、知りたいのです。 大体、目途は、付いています。 どなたか、ご指導願います。 ■各下線の表意定数 括弧内の?を、xl~のように知りたいです。 後、クエスチョン以外も、間違っている場合、教えて下さい。 1.一重線(xlSingle) 2.二重線(xlDouble) 3.太線(xlMedium) 4.点線(xlDot) 5.太点線(?) 6.破線(xlDash) 7.太破線(?) 8.長破線(?) 9.長太破線(?) 10.一点破線(xlDashDot) 11.太一点破線(?) 12.二点破線(xlDashDotDot) 13.太二点破線(?) 14.波線(?) 15.太波線(?) 16.二重波線(?)

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

  • ベストアンサー
回答No.1

エクセルの定数ではなく MsoTextUnderlineType 列挙体が近いようです。(日本語のヘルプが見つからなかった) Name/Value/Description msoNoUnderline/0/Specifies no underline. msoUnderlineDashHeavyLine/8/Specifies a dash underline. msoUnderlineDashLine/7/Specifies a dash line underline. msoUnderlineDashLongHeavyLine/10/Specifies a long heavy line underline. msoUnderlineDashLongLine/9/Specifies a dashed long line underline. msoUnderlineDotDashHeavyLine/12/Specifies a dot dash heavy line underline. msoUnderlineDotDashLine/11/Specifies a dot dash line underline. msoUnderlineDotDotDashHeavyLine/14/Specifies a dot dot dash heavy line underline. msoUnderlineDotDotDashLine/13/Specifies a dot dot dash line underline. msoUnderlineDottedHeavyLine/6/Specifies a dotted heavy line underline. msoUnderlineDottedLine/5/Specifies a dotted line underline. msoUnderlineDoubleLine/3/Specifies a double line underline. msoUnderlineHeavyLine/4/Specifies a heavy line underline. msoUnderlineMixed/-2/Specifies a mixed of underline types. msoUnderlineSingleLine/2/Specifies a single line underline. msoUnderlineWavyDoubleLine/17/Specifies a wavy double line underline. msoUnderlineWavyHeavyLine/16/Specifies a wavy heavy line underline. msoUnderlineWavyLine/15/Specifies a wavy line underline. msoUnderlineWords/1/Specifies underlining words.

関連する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.二重波線

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

    動作環境 OS:Windows7(64Bit) Home Premium SP1 MS:Office Version2007 SP3 Excel図形内のテキストの編集で、マウスをドラッグしてテキストの領域を選択後、コンテキスト メニューから、フォント(F)-フォント(設定ダイアログ)画面-[フォント]タブ上に、下線の色が、 あります。 テキスト設定した場合、vba上から下線の色を取得する方法が、知りたいです。 大体、目途は、付いています。 どなたか、ご指導願います。 ■現在、自分が、分かっている下線の色を取得するPG 下記の方法ですと、全てエラーです。 For Each wkbWorksheets In ActiveWorkbook.Worksheets For Each wksShapes In wkbWorksheets.Shapes With wksShapes.TextFrame2.TextRange.Characters MsgBox .Font.UnderlineStyle.ColorIndex MsgBox .Font.UnderlineStyleColorIndex MsgBox .Font.Underline.ColorIndex MsgBox .Font.UnderlineColorIndex End With Next wksShapes Next wkbWorksheets

  • MSWord2000 下線と文字の距離

    Microsoft Word 2000 で、フォントの下線と文字との間の距離を調節したいのです。j、コンマ(,)のように下に出っぱった文字と重なってしまうんです。 jmh, ← 文字      ← ここの隙間。 ==== ← フォントの下線(2重線) よろしくお願いします。

  • エクセル2003でセルの中の文字に二重取り消し線や下線を引く方法について教えてください。

    資料を作っている関係で質問します。 エクセル2003でセルの中の文字に二重取り消し線や下線を引く方法について教えてください。 例えば、添付した画像の「ああ」のところに二重取り消し線を引き、「いい」のところに下線を引き、「うう」のところに波線を引くにはどうすればよいのでしょうか。 ワード2003だと、「ああ」のところを反転表示させた後、右クリックしてフォントを出せば、文字飾りという項目が出てきますが、エクセルにはそういう機能はないのでしょうか。 よろしくお願いします。

  • MOUS Word97の罫線について

    Word97一般試験を数日後に受験するのですが 勉強していて疑問があるので教えてください。 [罫線]ツールバーの[線の種類]ボックスの▼をクリックした時、 上から順に見ると、 1番目は「罫線なし」 2番目は「一重線(実線)」 3番目は ............ 4番目は -------------(破線?) 5番目は - - - - - - -(点線?) 6番目は「一点鎖線」 私は、3番目~5番目の線の名前を教えてください。 MOUSテキストで「*行目のセルの下側を点線に変更し…」 という問題があり、解答では5番目の「- - - -」が「点線」として 使われていたのですが、3と4も点線のような気がするし・・・ 受験日が近いので、とても困っています。

  • Excel2003罫線(二重下線)が表示されない

    Excel2003罫線(二重下線)が表示されない!! ページが3ページまでの複数になるので、印刷タイトルとして上3行を指定。 3行目は、区切りとして二重下線の罫線にしている。 印刷、もしくは、印刷プレビューで表示すると、1ページ目と3ページ目は きれいに表示されるが、2ページ目は、二重下線が、一重線だったり、 太線だったりする。 なぜでしょうか?

  • visioで線路のような点線の描き方

    現在visioでフローチャートを作っている最中ですが、地図に出てくる線路のような黒い太線に白い点線が入っている線を作りたいのですが、どうにもうまくいきません。 どうやったら作ることが出来るでしょうか? ちなみにバージョンはvisio2002-SP2です。

  • Excel vbaを用いたオートフィル化後の罫線について

    Excel 2002でvbaを用いて、下記の表に対してマクロを組もうとしています。 例) 101 a 500円 129 b 600円 120 b 1000円 120 a 700円 138 b 900円 これをオートフィルを用いて、B列のbだけを抽出するとします。 その状態で表に罫線を引きたいのです。 罫線は、表の中の縦横線は点線、周囲だけ実線というものにしたいです。 そこで下のようなマクロを組んでみました。 Range("A1").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select With Selection.Borders(xlInsideHorizontal) .Color = vbBlack .LineStyle = xlDash .Weight = xlHairline End With '横点線 With Selection.Borders(xlInsideVertical) .Color = vbBlack .LineStyle = xlDash .Weight = xlHairline End With '縦点線 With Selection.Borders(xlEdgeBottom) .Color = vbBlack .LineStyle = xlContinuous .Weight = xlThin End With '周囲の下線    (→ここから他3方向への線もひきますが省略します) こうすると、オートフィル化する前は理想通りの形になったのですが、オートフィル化するとうまくいきません。 120 b 600円 120 b 1000円 (↑↓この間にaセルが入っているため、↑の線が実線となってしまいます) 138 b 900円 オートフィル化した後でも、どうにかならないものなのでしょうか? また、この表の行数やa、bの個数は日によって異なるため、最終行を指定するということも出来そうにありません。 また、今A列に101、10a…などといった数字が並んでおりますが、この数字が変化する境目のところにのみ太線を引く、ということは出来ますか? 例) 120 b 600円 120 b 1000円 (↑↓この間に太線を挿入したい) 138 b 900円 太線はA列からC列まで引きたいです。 こういったこともvbaでどうにかなるものなのでしょうか? どなたかお教え頂けると非常に助かります。宜しくお願い致します。

  • 道路標示・区画線に関する疑問

    高速道路、および一般道路で 白線の内側に白線の破線が引いている道がありますが、 これは何を表すのでしょうか? 走っていると二重線が出てきて、いつも何を表すのか分からず、 その点線の間を走っているのですが。

  • 「ホーム」タブのフォントグループの「罫線の作成(w)」を使って二重線や

    「ホーム」タブのフォントグループの「罫線の作成(w)」を使って二重線や太線を引く方法を教えてください。