2011-01-04 9 views
3

に私はプログラムでVBAで行を選択していますが、それは私にこの上型の不一致エラーを与えている:私は間違っては、行を選択するVBA問題

Rows(Str(i) & ":" & Str(i)).Select 

何をやっていますか?

For i = 5 To 1000 
    If Worksheets("5470").Cells(i, 2) = "" Then 
     Rows(Str(i) & ":" & Str(i)).Select 
     Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select 
     Selection.Delete Shift:=xlUp 
     Exit For 
    End If 
Next i 

答えて

10

Rows(i).Select 

私の知る限り使用しない理由、行も、行番号によってインデックス付けすることができます。

オルタナティブ:

Cells(i, 1).EntireRow.Select 
5

STR機能が番号にスペースを付加しますので、あなたが取得しているエラーです。 したがって、i = 100の場合、「100:100」になります。 GolezTrolのメソッドを使用するか、str()の代わりにcstr()を使用します。 負の値がある可能性があるため、スペースはアカウントの前に追加されます。