2016-05-13 16 views
1

xlsx形式のデータベース抽出ファイルを使用しています。構造は次のようになりますExcel vbaが範囲を検索しましたが、アクティブ化できません

ID  DC1  DC2 ............ DCn 
1  data  data ........... data 
2  data  data ........... data 
3  data  data ........... data 

IDセルを見つけてアクティブにするためにこのコードを使用します。

Set foundSourceRange = Sheets(sourceSheet).Cells.Find(What:=sourceColumn, LookIn:=xlValues, LookAt:=xlWhole) 
foundSourceRange.Activate 

Findは、要求されたセルを指定しますが、Activate throws as errorというエラーをスローします。

Runtime Error 1004 
Activate method of Range class failed. 

私は抽出ファイルに移動し、ヘッダを編集する場合 その後、予想通り私のコードは動作します(手動で再入力します)。私はすでにcsvに抽出ファイル形式を変更しようとしましたが、同じエラーが発生します。これを解決するコードで何かできることはありますか?

答えて

2

あなたが最初のシートをアクティブにする必要があります。

Set foundSourceRange = Sheets(sourceSheet).Cells.Find(What:=sourceColumn, LookIn:=xlValues, LookAt:=xlWhole) 
Sheets(sourceSheet).Activate 
foundSourceRange.Activate 

することはできActiveSheetオブジェクトにのみ.Activate範囲。

関連する問題