具体的な問題があるかどうかはわかりません。このコードは、Excel 2010 でデータを含む任意のシート (および独自のサブ) を使用して、私にとっては正常に機能します。
Sub test()
Dim rng As Range
Set rng = Cells(6, 2)
rng.Resize(, 9).Cut
rng.Offset(, 19).Select
Selection.Insert Shift:=xlDown
rng.Resize(, 9).Delete Shift:=xlUp
End Sub
「選択」ビットを追加したのは、テストに役立つことが多いためです。選択を中断して実行し、その行を F8 キーで押します。次に、何が選択されているかを確認します。ここでエラーが発生する場合は、rng.offset(,19) に何か問題があります。成功して (何か) を選択すると、データを挿入すべき場所を確認できます。
編集: rng.Resize(,9).Delete をコメントアウトすると問題が解決するようです - 新しく挿入されたセルを削除しています。rng.cut を使用してセルを貼り付けると、rng の現在の場所が変更されるようです。これを参照してください:
Sub test()
Dim rng As Range
Set rng = Cells(6, 2)
MsgBox (rng.Address)
rng.Resize(, 9).Cut
MsgBox (rng.Address)
rng.Offset(, 19).Insert Shift:=xlDown
MsgBox (rng.Address)
rng.Resize(, 9).Delete Shift:=xlUp
End Sub
「カット」を「コピー」に変更すると、動作が変わります。とにかく元のセルを削除するので、単純にそれを行いたい場合があります-コピーに変更します.