VBAのComobjにて、「Rangeクラスの.Selectメソッドが失敗しました」で、少し悩んだ話 – Information Teaching Service 雄飛

こんばんは、ITsiervice雄飛です。

今回は、久々にプログラミングの話題を。

LazarusとVBA(Excel)の話題になります。

ComObjから、ワークブックを呼び出し、シートを操作します。

そして、セレクトするんですが。

大雑把に記すと、下記の様な構文でエラーが。

WorkBook.WorkSheets[SheetNo].Select

ある、特定の条件下に於いて、「.Select」でエラーが発生します。

「Rangeクラスの.Selectメソッドが失敗しました」

と出ます。

エラーメッセージ

下記の青線がエラー箇所

自作ライブラリのバグなのか、ExcelのComobjのエラーなのか??
原因は判りませんでしたが。
下記で解決。

  Cells  :=  setWorkSheet.Cells[row,col];
  setLine := Cells.Borders[isBorder];
Cells変数にCellの座標を直に入れて、それを呼び出します。
(要はセレクトを辞める)。
無事、動きました。
めでたしめでたし。

コメントをどうぞ

メールアドレスが公開されることはありません。 が付いている欄は必須項目です