|
>DataSortの2ヶ所に「'」を付けて実行すると正常に実行しましたと出ます。
>元の状態で実行すると実行時エラー'1004':アプリケーション定義またはオブジェクト定義のエラーですと表示されます。
「DataSortの2ヶ所」と言うのは以下の所だと思います
End With
'データをA列で整列
DataSort .Offset(1).Resize(lngRows, clngColumns + 1), .Offset(, clngGroup)
'A列データを配列に取得
vntGroup = .Offset(1, clngGroup).Resize(lngRows + 1).Value
と
With rngList
'元データを復帰
DataSort .Offset(1).Resize(lngRows, clngColumns + 1), .Offset(1, clngColumns)
'復帰用Key列を削除
ここで、「実行時エラー'1004':アプリケーション定義またはオブジェクト定義のエラー」と成るのは
多分、lngRowsの値が0、若しくはclngColumns + 1の値が0と思われますが?
clngColumnsの値を-1以下にしなければ成らないし?
lngRowsが0の場合は、
'行数の取得
lngRows = .Offset(Rows.Count - .Row, clngGroup).End(xlUp).Row - .Row
If lngRows <= 0 Then
strProm = "データが有りません"
GoTo Wayout
End If
この部分でエラー対策を行って居ます
因って、コードの記述で記述漏れを起こしているのではと思われます
記述したコードをUpして見て下さい
また、記述しているモジュール(標準モジュール?、シートモジュール?)を教えて下さい
|
|