[VB6.0(SP6)/EXCEL2000(SP3)]
こんにちわ。
VBよりEXCELに保存された内容をクリアしたいのですが、
「RangeクラスのSelectメゾットが失敗しました。」という
エラーメッセージが出力されます。
以下ソースです。
Set objXlsApp = CreateObject("Excel.Application")
intXLSOpenFLG = gcRET_OK
Set objXlsBook = objXlsApp.Workbooks.Open("C:\TEST\TEST.xls")
Set objXlsSht = objXlsBook.Worksheets("Sheet1")
objXlsSht.Range("A5:I18").Select ← ここでエラー
objXlsSht.Selection.ClearContents
(以下省略)
教えて下さい。
宜しくお願い致します。
> objXlsSht.Selection.ClearContents
Selectionって、objXlsSht(Sheetオブジェクト)のプロパティではなく、
objXlsApp(Applicationオブジェクト)のプロパティのはずですよ。
それと、何故かSelectしてから、Selectionを操作しておられますが、
データのクリアだけなら、わざわざ選択状態を変更せずとも、
objXlsSht.Range("A5:I18").ClearContents
の1行で十分ですよ。
Selectionを使った操作というのは、VB6でいえば、
Form2.Text1.Text = "aa"
というコードを、
Form2.SetFocus
Screen.ActiveForm.Text1.SetFocus
Screen.ActiveControl.Text = "aa"
のような処理にするような意味になりますので、無駄が多いです。
ツイート | ![]() |