• ベストアンサー

OLEObjectsのフォントサイズを変更

エクセルのシート上のOLEObjectsのフォントサイズを変更することはできますか? シート上にはコマンドボタンしかないので、フォントのサイズの変更は可能だと思いますが For Each o In ActiveSheet.OLEObjects o.Height = 15 o.Width = 30 o.FontSize = 9 Next こうすうと、実行時エラー438が発生します。 この項目は、手作業じゃないと設定できないのでしょうか?

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

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

こんにちは。 >For Each o In ActiveSheet.OLEObjects かなり乱暴なコードです。 もちろん、 o.FontSize = 9   ↓ o.Object.FontSize = 9 ですが、CommandButtonだけなら、あえて書くなら、こうなりますね。 Dim o As OLEObject  For Each o In ActiveSheet.OLEObjects   If TypeName(o.Object) = "CommandButton" Then    o.Height = 15    o.Width = 30    o.Object.FontSize = 9   End If  Next o

WMVMSDMZHMJU
質問者

お礼

ありがとうございました。

その他の回答 (1)

回答No.1

o.Object.FontSize = 9 じゃないですかね? For ~ Next ループ内にブレークポイントを設定し メニュー→表示→ローカルウィンドウで調べました。

WMVMSDMZHMJU
質問者

お礼

ありがとうございました。

関連するQ&A

  • オブジェクト名が同じ図形の変更

    アクティブセル値と同じオブジェクト名のテキストボックスが複数有ります。そのテキストボックスの大きさやテキスト(アクティブセル値と同じ)の内容に書き換えたいと思っています。 サイズとテキスト書き込みのステートメントをFor Eachで括りました。 途中にMsgboxを入れて確認するとボックスの数だけ繰り返しているのは間違いないのですが、変更できるのは1個だけです。 最初に作った(?)テキストボックスのみを何度も書き換えているのかな?と思っているのですが、複数個の変更をするにはどの様にしたらいいのでしょうか。 宜しくお願い致します。 Sub test() A = ActiveCell.Formula For Each shp In ActiveSheet.Shapes If shp.Name = A Then ActiveSheet.Shapes(A).Select Selection.ShapeRange.Height = 19.5 Selection.ShapeRange.Width = 19.5 With ActiveSheet.Shapes(A).TextFrame .Characters.Text = A End With With Selection.Font .Size = 7 End With End If Next shp End Sub

  • フォントサイズ(C# or VB)

    C#で開発をしています。 指定した高さに最も近い高さをもつフォントサイズを取得したいのですが現在 int fontsize = 1; float height = 90; Font myFont = new Font("MS UI Gothic", fontsize ); //高さ90に近いフォントサイズを取得 while(myFont.GetHeight(e.Graphics) < height) { myFont = new Font("MS UI Gothic", fontsize ); fontsize += 0.001f; } とつくり的にはこんな感じでとれることはとれたのですが もっとスマートな方法、簡単な方法はないのでしょうか? よろしくお願いします。

  • フォントサイズを変更するスクリプト

    こんにちは。 早速ですが、フォントサイズを変更するスクリプトを探していて、見つけたのが、 http://www.openspc2.org/JavaScript/library/string/fontsize_set/index.html ですが、これでやるとサイズを変更した時、テーブル内のフォントは変更できないのでしょうか? 初心者のためどこをどう修正して良いかわからなかったので、質問させていただきました。オンマウスではなく、クリックでサイズを変更したいと思います。 初心者のヒコっ子ですが、宜しくお願い致します。

  • 文字サイズを変更できない

    web制作していて、文字サイズ変更の機能をつけました。 * * * * * * * * * * * * * * * * <div id="fsize"> <div><a id="fsize_l" onclick="document.body.style.fontSize='large'" href="javascript:void(0);"><img src="../../images/b_fsize_l.jpg" alt="文字サイズ 大" width="85" height="25" /></a></div> <div><a id="fsize_m" onclick="document.body.style.fontSize='small'" href="javascript:void(0);"><img src="../../images/b_fsize_m.jpg" alt="文字サイズ 中" width="19" height="25" /></a></div> <div><a id="fsize_s" onclick="document.body.style.fontSize='x-small'" href="javascript:void(0);"><img src="../../images/b_fsize_s.jpg" alt="文字サイズ 小" width="29" height="25" /></a></div> </div> * * * * * * * * * * * * * * * * IEとfirefoxで確認したところ、問題なくサイズ変更されていたんですが、制作を進めていったら、いきなり変更しない箇所がでてきてしまいました。 全体のフォント指定はemでやっています。 何が原因なのでしょうか? 言葉足らずな部分があるかもしれませんが、どうぞよろしくお願いします。

    • ベストアンサー
    • HTML
  • VBA フォントの色を設定するには?

    Sub test() Dim shp As Shape With ActiveWindow.Selection.SlideRange For Each shp In .Shapes shp.TextEffect.FontSize = 9 Next shp End With End Sub これで、現在のシートのテキストのすべてのフォントサイズを設定できたのですが、 全ての色を設定するにはどうすればいいでしょうか? たとえば現在のシートのすべての文字の色を赤(255)にしたい場合は、どういうコードになりますか? ヘルプを見てもよくわかりませんでした。

  • エクセルで図形の削除

    シート内に作図されている線で、 100 < .Height < 200 And 100 < .Width < 200 上記の条件を満たすものを削除したいのですが、以下のマクロですと、全ての線が削除されてしまいます。 シート内に様々な長さ・向きの線を作図して試したのですが。 For Each x In ActiveSheet.DrawingObjects  With x    If 100 < .Height < 200 And 100 < .Width < 200 Then    .Delete    End If  End With Next どこがおかしいでしょうか? ご指摘お願いします。

  • フォントサイズ変更に合わせテーブルの高さを変えたい

    フォントサイズ変更に合わせテーブルの高さを変えたい フォントサイズ変更に合わせテーブルのセルの高さを変えたいのですが、 どうすればよいでしょうか? <現状> ・HTML <td class="fontsizechange"> ・CSS .fontsizechange { font-size: 500%; } ・この状態だと、テーブルセルから、フォントが飛び出してしまいます ・フォントサイズの大きさに合わせ、セル高さを連動させるにはどうすればよいでしょうか? ・もし難しい場合は、テーブルセルの高さを、(固定値ではなく)相対的に大きくするにはどうすればよいでしょうか? ・height:500%;? ・height:500em;? ・libe-height:1.4;?

    • ベストアンサー
    • CSS
  • 文字サイズ変更ボタンでサイズが思うように制御できません

    文字サイズ変更ボタンを配置して、下記のhtmlで大中小に変えられるようにしています。 <div><a id="fsize_l" onclick="document.body.style.fontSize='130%'" href="javascript:void(0);"><img src="../../images/b_fsize_l.jpg" alt="文字サイズ 大" width="85" height="25" /></a></div> <div><a id="fsize_m" onclick="document.body.style.fontSize='100%'" href="javascript:void(0);"><img src="../../images/b_fsize_m.jpg" alt="文字サイズ 中" width="19" height="25" /></a></div> <div><a id="fsize_s" onclick="document.body.style.fontSize='70%'" href="javascript:void(0);"><img src="../../images/b_fsize_s.jpg" alt="文字サイズ 小" width="29" height="25" /></a></div> 元々の文字サイズは%で制御しているのですが、大→中(=標準)に戻した時、元々のサイズとは異なるサイズになってしまいます。 どうしてでしょうか? 標準サイズを100%とし、中サイズも100%と記述しています。

    • ベストアンサー
    • HTML
  • オブジェクト名をVBAで指定する方法を教えてくださ

    VBAでワークシートにOLEObjectsのコマンドボタンを設置してるのですが ボタンのオブジェクト名をVBAで指定するにはどうすればいいでしょうか? Private Sub CommandButton1_Click() With ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False, DisplayAsIcon:=False) .Object.Name = "ボタン1" .Object.Caption = "ボタン" .Object.Font.Size = 9 .Width = ActiveCell.Width .Height = ActiveCell.Height End With End Sub を実行すると、 .Object.Name = "ボタン1" の部分で 「オブジェクトは、このプロパティまたはメソッドをサポートしていません。(Error 438)」というエラーになります。 他のコードは大丈夫です。 オブジェクト名をVBAで指定する方法を教えてください。 当方エクセル2003です。

  • フォントサイズの変更(CSS、Javascript)

    いつもお世話になっております。 スタイルシートで設定しているフォントサイズを、 <select>タグによるメニューにて、 任意のサイズに変更させる機能をつけたいと 考えています。 (メニューからフォントサイズを指定する) IEは問題ないのですが、NNだと、 まったくだめです。 NNで同じようにフォントサイズを変更するには、 どうすればよろしいのでしょうか? 問題点*********************************** IE5.01、5.5だと、問題なく変更できました。 NN4.75で行うと、だめでした。 OSはWindows(98、2000、Me)です。 記述:*********************************** <head>タグ内 <script language = "javascript"> <!-- //親フレームから、現在のフォントサイズを取得。 var changeSize = parent.fontSize; var str = "<style type=\"text/css\">"; str += "body{font-size:" + changeSize + "}"; str += "</style>"; document.write(str); function changeFontSize(TargetFont){ var Sel=TargetFont.selectedIndex; var lclFontSize = TargetFont.options[Sel].value; //親フレームに変更後のサイズを格納 parent.fontSize = lclFontSize; location.reload(); } //--> </script> <body>タグ内 <select name="OP1" onChange="changeFontSize(this);"> <OPTION value="10">10pt</option> <OPTION value="20">20pt</option> <OPTION value="20">30pt</option> </select> ****************************************** 補足: メニューで選択されたフォントサイズを取得して、 ページをreloadします。 親フレームにフォントサイズを一度格納するのは、 他の子フレームすべてにフォントサイズを対応させるためです。

専門家に質問してみよう