※  excel  2016  にて検証した内容です。

EXCEL VBA にて、シート上にあるActiveXコントロールのコマンドボタンをいろいろ変更するには、   http://officetanaka.net/excel/vba/tips/tips135.htm
に、詳しく記載されています。ここでは表示文字列( Captionプロパティ ) ですが、この部分を変えれば、色とかも変えられます。
で、変える対象となるオブジェクトは CommandButton1
となっています。これはEXCELメニューの [ 開発 ] - [ デザインモード ] をクリックして、シート上のコマンドボタンの大きさを変更できる状態にしてから、右クリック → プロパティ で表示される (オブジェクト名) プロパティです。

このボタンの親オブジェクトは、ワークシート、その親のオブジェクトはワークブックになります。
そのため、例えば、別のブックからBtest.xlsmブックのStestシートにあるCtestコマンドボタンの文字列をaaaにする場合は、
Workbooks("Btest.xlsm").Worksheets("Stest").Ctest.Caption = "aaa"
となります。また、これらを変数に割り当てて記述する場合、以下のようになります。
Dim sht as ObjectDim btn as Object
Set sht = Workbooks("Btest.xlsm").Worksheets("Stest")Set btn = sht.Ctest
btn.Caption = "aaa"

ここで注意しなければなりませんが、Dim sht as Worksheetsと宣言してしまうと、Set btn = sht.Ctestの部分でコンパイルエラーが発生してしまいます。原因は分かりませんがWoeksheetsではなくObjectなら動作します。ネット検索では見つからなかったので、原因究明に時間がかかりました。
又、変数に割りあてた記述をする場合、実行時に[ デザインモード ] がON になっていると、上記と同様に ボタンの変数のset部分でコンパイルエラーが発生します。実行時にはデザインモードをOFFにしましょう。
ご注意ください、それでは。