- 締切済み
マクロやVBEが動作しない
XP Pro SP3 / Excel97で、はじめてマクロやVisual Basic Editorを学ぶことになりました。ところが、「新しいマクロの記録」を選択すると「記録できません」というアラートが出たり、Visual Basic Editorを起動しようとすると起動しかけた段階で終了してしまいます。機能制限がかかっていたり、別途インストールする必要があるのでしょうか。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- WindFaller
- ベストアンサー率57% (465/803)
こんにちは。 レスがついた後で、なんとなくすっきりしないと感じです。 私の回答の仕方が悪かったような気がします。もしExcel97が、支障なく動いているのなら、後は、基本的には、個人用マクロの生成自体をしないで、ブックにプロジェクトを生成すればよいのです。本来、旧バージョンの場合は、何も知らないままに個人用マクロを作って、そこを利用するので、トラブル発生ということがあります。理由は、2つの個人用マクロのファイルが出来ているという現象があります。その時は、片方のProgram Filesの中の、Microsoftフォルダーの中を探して削除すればよいはずです。こちら側は、XPで使わないからです。 他にも、「記録できません」というエラーには、「記録マクロ」を作る時に、同じプロジェクトの中で、マクロ(プロシージャ)名が、同じ名称(例:Macro1)で作ろうとしてしまうのが原因です。ふつうは、「作業中のブック」に明示的(自分自身が確認して、という意味)に作れば、そのような問題は発生しません。 それは、試してみたのでしょうか? >はじめてマクロやVisual Basic Editorを学ぶことになりました。 そもそも、Excel97をお使いなのでしょうか? それとも、プログラミング言語を学ぶということでしょうか? OSのXPのサポートが切れるからというものと、Excel2000以降のVBAと違う部分は目をつぶることににして、基本的な学習自体に問題ないと思います。 >まったく別の方法で解決する方向で考えます。 とは、まさか、MSのVS2012 Expressのフリーウェアを利用するということでしょうか? VBAとはかなり違いますが、何もないよりはマシだと思います。 もちろん、VSの中の、VB.netにしろ、VBScriptにしても、思ったよりは敷居が高いし、OpenOffice.orgの中のBasic言語は、私自身やってみましたが、オブジェクト自体が違いますので、VBAとはまったく違うものです。VB系の学習用のプログラミング言語(MS Small Basic)もありますが、XPでは、重すぎて、どれほどのものかは真価を知りません。VB系を離れて、Perlなどの言語になれば、また別の観点になります。 また、誰かに教わるにしても、本を通して学ぶにしても、VBAにしても、他の言語にしても、お金の掛かる話です。新しいExcelを購入するにしろ、入門用のプログラミング言語を購入するにしても、その言語の学習代(書籍を含む)は、言語やソフトウェアよりも高く付くことが多いので、その点は、考慮しないといけません。もちろん、プロ用の言語は、10万円も超えるとなれば、とても一般人では手は出せません。 余計なおせっかいかと思いましたが、気になったことへの回答を付けておきます。
- WindFaller
- ベストアンサー率57% (465/803)
こんにちは。 Win XPで、Excel97がまともに動いたかどうかは、はっきり記憶していません。 >はじめてマクロやVisual Basic Editorを学ぶことになりました。 せめて、Excel 2000を、どこかで中古でよいので手に入れてください。 Excel 97のパッチ当てすら、もはやないと思います。確か、Office97のパッチは、Phonetic関連で大幅に変わったような気がします。 Excel 97 のVBAは、基本的なVBA関数が足りません。そこで、自作の[ユーザー定義関数]を作らないといけないのですが、今手に入る教本から、Excel 97用に書き換えるには、VBAの経験が1~2年レベルでも、かなり難しいです。97用の独特のコードの書き方もありますが、こうした掲示板でも、今どきは、誰も教えようとは思わないはずです。 >「新しいマクロの記録」を選択すると「記録できません」というアラートが出たり おそらく、標準で作られる、「個人用マクロブック」の位置などが間違ったところにあるからだと思いますが、Office 97 は、そういう点で考慮されていないからです。OSは、Win 95の時代のものだからです。よくあるトラブルとして、「個人用マクロブック」が、ダブルで作られてしまう現象などがあります。 もちろん、本来、VBAを習得する段階で、「個人用マクロブック」を作る必要性などはないのですが、つい、初心者の方は、作ってしまうのです。
お礼
早速、ご回答をいただき、ありがとうございます。ご親切に丁寧にお答えいただき、ありがとうございます。そもそも、あとわずかでXPのサポート自体が終了になる訳ですし、やはり、無理のある環境のようですね。学ぶことが必要になった問題は、まったく別の方法で解決する方向で考えます。ありがとうございました。
お礼
再度、ご丁寧なご回答をいただき、ありがとうございます。マクロの生成についての問題は、いただいたアドバイスをよく読んで、解決できるかを試してみたいと思います。職場の環境でExcel97を使用しています。簡単な関数などは使っています。しかし、職場の都合上、簡単にバージョンを変えることができないのです。プログラミング言語については、ウェブ系(Perl、PHP、JavaScript、etc)については、ある程度習得しています。まったく別の方法とは、パソコンの環境では解決の見込みがなさそうなので、業務の行い方レベルで(パソコンを使った業務の行い方ではない方法)考え直そうと思いました。しかし今後は、MS系の言語も機会をつくって学びたいと思います。言葉足らずの質問に丁寧にご回答いただき、ありがとうございました。