重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

エクセルのシート上に、ある条件の時にコマンドボタンをエクセルシート上に出力させ、
そのコマンドボタンの名前を変更したいのですが、コマンドボタンは出力できましたが、名前の変更は上手くいきません。
(VBAはよくわからないので、マクロ記入を利用したり、サンプルをダウンロードして簡単なプログラ ム作っています。)
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
マクロ記録のプログラムはエクセルのシート上に出力できる
ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
, DisplayAsIcon:=False, Left:=108.849557522124, Top:=14.6017699115044, _
Width:=75, Height:=24.5575221238938).Select
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
 --------------------------------------
ダウンロードしたプログラムは上手くいかない
ActiveSheet.OLEObjects("Forms.CommandButton.1").Object.Caption = "新しいCaption"
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

A 回答 (1件)

> ダウンロードしたプログラムは上手くいかない


> ActiveSheet.OLEObjects("Forms.CommandButton.1").Object.Caption = "新しいCaption"

クラスではなく、オブジェクトの名前を指定します。
ActiveSheet.OLEObjects("CommandButton1").Object.Caption = "新しいCaption"
とか。

ボタン作成時に標題を設定してしまうのが簡単です。
ボタンの名前やインデックスを調べなくても良いので。

With ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
  , DisplayAsIcon:=False, Left:=108.849557522124, Top:=14.6017699115044, _
  Width:=75, Height:=24.5575221238938)
'  Debug.Print .Name
  .Object.Caption = "新しいCaption"
'  .Name = "新しいボタン1"
  .Select
End With
    • good
    • 0
この回答へのお礼

上手くいきました、ありがとうございます。
丁寧教えていただきましたので、ベストアンサーにさしてもらいます。

お礼日時:2019/09/28 01:22

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!