VB6からExcelシートを開く下記コーディングを作成しました。
エクセルシートは開くのですが、エクセルでスクロールバーを
動かすと、「エラーが発生したため、Excel.exeを終了します。
プログラムをもう一度開始する必要があります。」のエラーメ
ッセージが表示されてしまいます。
この現象はXP、Excel2002の組み合わせでは正常動作します。
Windows2000、Excel2000では上記エラーが出ます。
どこに原因があるか、ご教授下さい。
よろしくお願い致します。
Dim objExcelApp As Workbook
'excel への参照
Set objExcelApp = GetObject("c:\Temp\work.xls", "excel.sheet") 'excel
objExcelApp.Application.Visible = True
objExcelApp.Worksheets("うつパス").Visible = True
objExcelApp.Application.DisplayAlerts = False '保存ダイアログを出さない
objExcelApp.Windows(1).Visible = True
objExcelAppという名のWorkbook型変数にsheetオブジェクトを
放り込んでいるあたりから問題では?
私には「正常動作する」ほうが不思議でなりませんが・・・。
Excel Objectは
Excel.Applicstion
┗WorkBook
┗WorkSheet
という階層構造をとります。
http://www.bcap.co.jp/hanafusa/
あたりを見て、宣言と参照のしかたを勉強したほうがいいでしょう。
http://www.bcap.co.jp/hanafusa/
上記参照させて頂きました。
GetObjectからCreateObjectの手法に変更し、Windows2000の環境でExeを作成すれば、Xp、2000双方とも正常動作するようになりました。
XpでEXEを作成した場合は、2000で正常動作しませんでした。
有難うございました。
ツイート | ![]() |