質問: varData End With Next i wbRead.Close SaveChanges:=False ``` このような処理を組んでいます。 (実際の読込処理、書込処理では取込データの加工や、書き込み位置の計算処理なども行っています) 対象シートをActivateの後に表からデータ部を配列化していますが、 データ書き込み処理でのActivateが動作されず、 書き込み処理が正常に行われません。 ただし、.Activateの箇所でブレイクポイントを貼って デバッグで動作させる場合は、正常に動作します。 (.Activateでステップを進めると、 自ブックの対象シートが画面最善面に表示されます) また、.Activate以外の箇所にブレイクポイントを張ると、 必ず読込ブックが最前面に居る状態でブレイクされます。 このような現象の際の対処法について、 御教授いただければ幸いです。
回答: アクティブ前提の作りはやめましょう。 環境に左右されやすく安定した動作は望めません。 ワークシートはオブジェクト変数に代入しておくことで操作が可能です。 例 ``` Dim ws As Worksheet Set ws = wbMe.Sheets(1) ws.cells(1,1).CurrentRegion.select ```