• 締切済み

VBAで作成したボタンが押せない

WIN2000でEXCEL2000を使用しています。 エクセルのVBAでダイアログを作成しその中に オートシェイプの四角形ボタンを作成しました。 そのボタンを押すとマクロが実行されるように しています。 しかし、私のPCではボタンを押したら実行できるのに 他のPCではボタンを押しても実行されないPCも あります。他のPCもOS、EXCELは同じものです。 なぜこのような事が起きるのか教えてください。

みんなの回答

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.3

ユーザーフォームのコントロールの種類としては、 ラベル、テキストボックス、コンボボックス、リストボックス、 チェックボックス、オプションボタン、トグルボタン、フレーム、 コマンドボタンなどがあるのですが・・・。 > ユーザーフォーム上にオートシェイプの四角形があり うぅ~ん。「ユーザーフォーム」で「オートシェーブ」ですかぁ? 始めて聞きます。 もしかして「コマンドボタン」のことですか? コマンドボタンなら、ボタンを配置したら、これをダブルクリックすれば、 Private Sub CommandButton1_Click()    <------ ここにコードを記述します。 End Sub のようなイベントブロシージャーが表示されますので、その中にコードを 記述します。 ちょっと状況が、いまいち解りませんので、どうもなりません。 解決に至らず、ごめんなさい。 あとは、VBAコードをここに貼り付けてみたらどうですか。

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.2

この内容からは、ちょっと状況が、いまいち見えてきませんね。 以下は、マクロが有効になっていることを条件に書いています。 > エクセルのVBAでダイアログを作成し・・・ 「ダイアログ」ってユーザーフォームのことですか? > その中にオートシェイプの四角形ボタンを作成しました。 「シート上に配置した」ということですか? ここがハッキリしません。 もし、そうであれば、そのオートシェイプを右クリックして「マクロの登録」で 一番上の欄に 例えば、***_ClicK という名前が表示されますが、 その下の大きな欄にそれと同じ名前がありますか? 無ければ、クリックイベントが登録していませんので、下の欄から実行するマクロ名を 指定します。 該当するものが無い場合は、「新規作成」ボタンを押して表示されたコードウィンドウで、 マクロを作成します。 状況が違う場合は、今までの操作過程を含め現状の詳細を補足する必要があるでしょう。

masayanyan
質問者

お礼

回答ありがとうございます。わかりずらくてすいません。 <「ダイアログ」ってユーザーフォームのことですか? そうです!そうです すいません。 <「シート上に配置した」ということですか? ここがハッキリしません。 いいえ。ユーザーフォーム上に作成しました。そして 「マクロ登録」には、その下の大きな欄にそれと同じ名前があります。 ユーザーフォーム上にオートシェイプの四角形があり それをクリックすると別のダイアログが表示されるよう に作りました。しかし一部のPCでは 四角形をクリック しても何もアクションが起きないのです。 そして、EXCELファイルを1回閉じてまた開いて 四角形をクリックすると、アクションが起きる 事もあります。 タブオーダの設定の問題かな?と思いその四角形を タブオーダ設定で一番上に(最初)設定し 四角形をクリックしてもアクションが起きないです。

回答No.1

マクロが無効(セキュリティのため)になっている可能性はないのでしょうか? ツール→オプション→セキュリティ→マクロセキュリティ で設定を変更できるとおもいます。 (ちなみにエクセルのバージョンがちがいますので・・・。)

masayanyan
質問者

お礼

ありがとうございます しかし どのPCもマクロは有効になってます・・(TT)

関連するQ&A

  • ボタン作成について

    オートシェイプの上にマクロのボタンを作成しました。それを他の場所に動かすとオートシェイプのみ動き、マクロのボタンはそのままの位置です。グループ化をしようとしましたが無理でした。オートシェイプの上にマクロのボタンを置きたいのですが、どうすればいいですか?

  • コマンドボタンにマクロを登録させる方法

    エクセルでマクロを作成しました。マクロを実行させる為に「コントロールツールボックス」にある「コマンドボタン」で作ったボタンに登録をしたいのですがうまくいきません。 以前はコマンドボタンを作ったら、自動的に「マクロの登録」ダイアログボックスが出てきたのですが、何故か出なくなってしまいました。オートシェイプで作成したボタンなら、右クリックすると「マクロの登録」があるのですが、コマンドボタンを右クリックしても「マクロの登録」がありません。以前のように、自動的に「マクロの登録」ダイアログボックスを表示させる方法があったら教えてください。 また、ボタンをダブルクリックするとVBAが開いて以下のようなコードの記載がありますが、ここにコードを記載すればボタンをクリックしたときにマクロが実行されるのでしょうか?VBAはまったく解りませんので、どのように記載したらいいのかわかりません。実際に記入して教えてください。お願いします。マクロ名は、日本語で「結果一覧」としました。(「Private Sub CommandButton1_Click()」と「End Sub」の間に、マクロの記述部分をコピーして、貼り付けたら、ボタンをクリックしたときにマクロは実行できたのですが、もっと簡単にマクロ名を記述したら実行できるような気がするのですが、簡単に記述して実行できる方法があったら教えてください。) OSはWindows ME、Excelは2002 です。よろしくお願いします。 コマンドボタンをダブルクリックしたときのコードです。 Private Sub CommandButton1_Click() End Sub

  • 【VBA】 VBAを使ってExcelにSendMessageしてメニューを実行したい

    エクセルにおいて、VBAを使ってExcelに対してSendMessageをおこないメニューを実行したいのですが、メニューのSendMessageの引数WPARAMとLPARAMに 何を渡せば良いのでしょうか?SPY++を使ってメニューを実行したときにExcelに送られるWM_COMMANDを監視していましたがWM_COMMANDが見つかりませんでした。 ご存知の方、ご教授お願いします。 ちなみに、オートシェイプ選択時に「書式」-「オートシェイプ」メニューを実行し、書式設定ダイアログが表示され、オートシェイプの書式設定を変更するのが目的です。(VBAを使って書式設定のダイアログを表示する必要あり) SendKeysステートメントを使ってやってみましたがダメでした。この場合、モードレスダイアログに書式設定するコマンドボタンを配置し、そのボタンをクリックしたときにSendKeysを実行するもので、モードレスダイアログを表示している間はキーがモードレスダイアログに送られると判断してSendKeysの使用はやめました。

  • Excel VBA コメントに関して

    Excel2003を使用しています。 VBAになるのかは定かではないのですが Excelの機能に「コメント」を付ける機能がありますよね セルに対してカーソルを合わすことで表示される黄色い枠のコメントのことをしるす。 これをオートシェイプやコマンドボタン等のオブジェクトに対してカーソルを合わせることに よってこのコマンドがなんなのかのコメントを付けたい場合Excelでできるのでしょうか? もし、できるとしたならばどのようにしたらいいのでしょうか? VBAを使いできるのか、もっと楽な方法があるのか 教えて頂きたいのです。 ご教授願えないでしょうか、宜しくお願いします(人>д<*ペコ謝) ※補足※ コマンドボタンやオートシェイプでテキストを入れてしまうとボタン自体が入れる文字数によって大きくなってしまうのでできるだけ小さいボタンを作り補足事項やヘルプとして使用したい。 コマンドボタンにはVBAプログラムを組むとして、オートシェイプならば、図形にマクロを登録するとして、カーソルを合わした時のみコメントを表示させたいということです。

  • エクセルで実行ボタンを加えたい!

    エクセルでマクロを組んだので、その実行をボタンにしたいのですが、普通のオートシェイプで実行ボタンを作るのでなくよくホームページでみたりするようなボタンにしたいのですが、どのようにシート上に設置したらよいのでしょうか??おしえてください。

  • エクセル2000(EXCEL)で日毎で実行させるマクロをひとつのオートシェイプに登録する方法

    エクセル2000(EXCEL)でツール→マクロ→マクロの新しい記録(マクロの自動記録)を使用して日によって実行する内容の違うマクロ31個、つまり31日分のマクロを作ったとします。ひとつのオートシェイプを実行ボタンとして使いこれに日毎によって実行するマクロを変える様に登録する事ってできるのでしょうか?日付が変わっている条件としてはNOW関数で拾えるとしてこの条件を元にひとつのオートシェイプで日ごとに実行するマクロを変えるということはできますか?やっぱり実行ボタンとしてのオートシェイプを31個作りひとつづつマクロを登録していくしかないのでしょうか?またできない場合は他にどんな方法があるでしょうか?分かる方宜しくお願いいたします。

  • EXCELのボタンの整列

    EXCEL2000を使用してます。 ワークシート上にオートシェイプで同じ大きさのボタンの図形を10個ほど作成してマクロの登録をしています。 これらのボタンの位置がバラバラで見た目が悪いので、 きれいに整列させたいのですが、いい方法がありましたら教えてください。

  • VBAで実行押すまでExcel非表示にしたい

    VBAでユーザフォームを作成しました。 Excelを立ち上げるとExcelシートの前にユーザフォームが出る状態なのですが、 ユーザフォームの実行ボタンを押すまでは非表示にしたいのですが、どのような記述をしたらよいでしょうか? マクロ的に実行ボタンを押すと結果が、Excel上に反映されるので、実行ボタンを押すまで非表示であれば大丈夫です どうか教えてください。

  • vbaでボタンをクリックして上書き保存したい

    vba初心者です。 エクセルにボタンを作成して、クリックすると保存したいのですが、 ボタンを作成して、マクロの登録を開き Sub 保存() ActiveWorkbook.Save End Sub と作成したのですが実行できません。 どうしたらいいのでしょうか? よろしくお願いします。

  • excel2000のVBAについて

    excel2000でコマンドボタン(command1)をclickすると VBAの command1_click関数の処理をするという マクロをVBAで作成したいのですが、 (1)excelシート上にコマンドボタンの作成方法 を教えてください

専門家に質問してみよう