• ベストアンサー
  • すぐに回答を!

Excelのマクロが動きません。

  • 質問No.8111955
  • 閲覧数404
  • ありがとう数3
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 100% (2/2)

エクセルのマクロを使っていたのですが2003から2010にバージョンを変えたところ、
マクロが動かなくなってしまいました。プログラムは下記です。


Sub AvailableFonts()

Dim Ctrl As CommandBarComboBox
Dim i As Integer

Set Ctrl = Application.CommandBars("Formatting"). _
Controls("フォント(&F):")

For i = 1 To Ctrl.ListCount
ActiveSheet.Cells(i, 1).Value = Ctrl.List(i)
Next i

End Sub


「Set Ctrl = Application.CommandBars("Formatting"). _
Controls("フォント(&F):")」
の部分で「プロシージャの呼び出し、または引数が不正です。」とエラーが出てしまいます。
エクセル2010で動かすにはどう変えたらいいのでしょうか。

ご教授お願いします。

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

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

ベストアンサー率 62% (409/657)

Excel2007以降ではリボンが採用されている関係上、CommandBarsを使用するマクロが動かなくなることが多いようです。
フォントのリストを取得したい場合は、コントロールのIDを直接指定して取得するとうまくいくみたいです。

Excel VBA - フォントリストの取得
http://ameblo.jp/blueskyame/entry-10248887879.html
お礼コメント
tezzy

お礼率 100% (2/2)

ありがとうございます!
ID入力に変えましたら解決しました!
投稿日時:2013/05/30 17:19

その他の回答 (全1件)

  • 回答No.1

ベストアンサー率 53% (368/684)

64bit版をインストールしていませんか?
32bit版を使うと、そのままで動くようになるのではないかと思います。
お礼コメント
tezzy

お礼率 100% (2/2)

返信ありがとうございます。
説明不足で申し訳ございません。
Windows7の32Bitの環境でした。
m-take0220さんのアドバイスのおかげで無事解決できました。
投稿日時:2013/05/30 17:20
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ