- ベストアンサー
Vistaでエクセルのマクロがエラーになります
XPのSP3でエクセル2000を使っていました。 今回、Vistaに替えて、今まで使っていたエクセル2000をインストールしました。 ワークシートの印刷はUSBで接続したエプソンG700で可能なのですが、下記のVBAを実行する時点でエラーとなり、「マイクロソフトエクセルで問題が発生しました」と表示され、エクセルそのものが終了してしまいます。 If kensu <= 23 Then Range("l39:r82").Select ActiveSheet.PageSetup.PrintArea = "l39:r82" ActiveWindow.SelectedSheets.PrintOut copies:=2 End If 印刷は、条件によりこの Range 以外のセル範囲も選択して印刷します。 このVBAが動かないので、日常事務が出来なくなっています。 止む無くXPを再度登場させ、使わざるを得ない状況に追い込まれています。 解決策をご教示頂きたく、お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
マクロの自動記録で得られたコードをそのまま使っているように思われます。 変数もありますが。 2007でマクロの自動記録してみてコードを改造してはいかがでしょう? ※提示されているのはコードの一部だと思いますので、全部提示されたほうが 解決への早道だと思います。
その他の回答 (2)
- onlyrom
- ベストアンサー率59% (228/384)
プリンタードライバーは、Vista版になってますか? まだなら、下記URLからVista用をダウンロードしてみましょう。 それで今回の件が解決するかどうかは別にして、 やはりOSに対応したものでないと。。。 http://www.epson.jp/dl_soft/list/1619.htm 対応済なら見なかったことに。。(^^;;;
お礼
有難うございます。プリンターは対応しました。正常に動きます。 VBAでのプリントが出来ません。
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 http://www.microsoft.com/japan/office/previous/xp/evaluation/platform/office2000.mspx Microsoft Office 97、2000 の各 OS での対応表 動作保証しないという答えは、身もフタもないのですが、あちこちのサイトをみると、みなさん、Vista の、Excel2000でハングを出しながら頑張っているようです。そのマクロコードは記録マクロを起こしたような内容で、きちんとしたコードではないけれど、Vistaでも、そのコード自体はエラーを出すはずはないです。メーカー側の意図のままに、アップグレードせよとは言いませんが、今のままでは解決は難しいかな、と思います。(OSとアプリが同じ会社だから、このようなことになるのだと思いますが、いつまでこういうことが続くのでしょうね。)
補足
有難うございます。対応表は見ました。しかし、いろいろネットで見るとエクセル2000を使ってらっしゃる方も多いようでしたので、2007を買わずに済ませました。 XPにダウングレードした方がよかったのかと悔やんでいます。
お礼
marbinさん、有難うございました。 出張しておりまして、お礼が遅れて申し訳ありません。 マイクロソフトの20周年記念パッケージのoffice2007を1万円ほどで入手できましたので、折角お教え頂いたVBAの書き換えを行わずにエクセル2007を導入してしまいました。 具体的なアドバイスを頂き、試した上でお礼を申し上げようと思っておりましたが、急な出張が入り、試す余裕がありませんでしたことをお詫び申し上げます。又何かありましたら、是非アドバイスをお願い申し上げます。