- 締切済み
エクセル95のマクロをエクセル2000で使うとオーバーフローと表示される
エクセル95で作ってある職場のソフトをエクセル2000で使用すると、オーバーフローのエラーメッセージが出て、使用できません。 また、WIN98でエクセル95を立ち上げてそのソフトを使用すると難なく動くのですが、WIN2000やWINXPでエクセル95を立ち上げてそのソフトを使用するとエラーがでます。 なにか良い方法があるのでしょうか? ちなみに、そのソフトは、まず、エクセルアドインというものを読み込んで使用するものです。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- nishi6
- ベストアンサー率67% (869/1280)
これだけの情報での回答は難しいですが、ありがちなことを書いてみます。 差し障りのない程度、エラー箇所のコードが提示されていれば分かるかもしれません。Excel95は実行できませんが・・・ Excel95では総行数は16384行で整数型(Integer)で扱えますが、 Excel97以降では総行数は65536行で整数型(Integer)ではエラーになるため、長整数型(Long)で扱います。 どのようなコードがかかれているかわかりませんので下に例示してみます。 Reidai_xls95 は Exce95=○、Excel97以降=× です。修正すると、Reidai_xls97or2000 のようになります。 コード中にこのような扱いの変数がないか調べてみてはどうでしょうか。 (Excel95を動かす環境がないため想像して書いています)ご参考に。 '例1)Excel95で動くが、Excel97以降ではエラー Sub Reidai_xls95() '総行数は16384行 Dim xls_RowsCount As Integer xls_RowsCount = ActiveSheet.Rows.Count MsgBox xls_RowsCount End Sub '例2)Excel97以降で動くように修正 Sub Reidai_xls97or2000() '総行数は65536行 Dim xls_RowsCount As Long xls_RowsCount = ActiveSheet.Rows.Count MsgBox xls_RowsCount End Sub
お礼
有り難うございます。 大変厚かましいとは思いますが、時間のある時にでもアドインの修正方法を教えていただけませんか? 何度もチャレンジしているんですが、どうもわかりません。