2011-09-14 13 views
0

を使用して2つのデータセットを比較しているときにエラーを取得、私は2つのバージョン(旧、新)を比較する必要がエクセル2010年アレイ

Iは古い値と新しい値を格納するアレイを使用対応する値を比較しようとしました。値が同じでない場合、セルの背景は黄色になります。

すべてがこの文で声明

If vaNewValues(i, j).Value <> vaOldValues(i, j).Value Then 

まで正常に動作します、私は、実行時エラー「424」を取得しています:オブジェクトが配列の操作

Sub File_Comparison() 

'Open the old file 

OldFN = Application.GetOpenFilename(FileFilter:="Excel Files (*.xls), *.xls", Title:="Please open old file") 
Workbooks.Open Filename:=OldFN 
End If 

'Store the range of cells into an array 'vaOldValues 

vaOldValues = Range("b9:r54").Value 

'Close old file 

ActiveWorkbook.Close False 

'Open the new file 
NewFN = Application.GetOpenFilename(FileFilter:="Excel Files (*.xls), *.xls", Title:="Please open new file") 
Workbooks.Open Filename:=NewFN 

'Store the range of cells into an array 'vaNewValues 
vaNewValues = Range("b9:r54").Value 

'i= row 
'j=column 

For i = 1 To UBound(vaNewValues, 1) 'max row number 
For j = 1 To UBound(vaNewValues, 2) 'max column number 


*If vaNewValues(i, j).Value <> vaOldValues(i, j).Value Then* 

Range("b9:r54").Cells(i, j).Interior.Color = 65535 

End If 

Next j 
Next i 

End Sub 

答えて

2

を必要な範囲と同じではありません代わりに、配列内の値にアクセスするためにこれを試してください

If vaNewValues(i, j) <> vaOldValues(i, j) Then 
関連する問題