初心者なんですが、いろいろ教えてもらいながら、以下のコードまでたどり着きました。
処理自体はうまくいくのですが、エラーが出てしまいます。
実行時エラー9
インデックスが有効範囲にありません
というエラーが以下のコードの、
Set pasteSheet = Sheets(copySheet.Cells(copyRow, "I").Value)
部分で出てしまいます。
2-7行目も、I列も問題ないので、なぜエラーが発生するかわかりません。
教えていただけると幸いです。
よろしくお願いいたします。
VBA
1 Dim copyRow As Long 2 Dim copySheet As Worksheet 3 Dim pasteRange As Range 4 Dim pasteSheet As Worksheet 5 6 Set copySheet = Sheets("データ移行") 7 8 For copyRow = 2 To 7 '2行目から7行目を繰り返す 9 10 If IsError(copySheet.Cells(copyRow, "I").Value) = False Then 11 Set pasteSheet = Sheets(copySheet.Cells(copyRow, "I").Value) 12 Set pasteRange = pasteSheet.Cells(Rows.Count, "A").End(xlUp).Offset(1) 13 pasteRange.Resize(, 4).Value = copySheet.Range(copySheet.Cells(copyRow, 1), copySheet.Cells(copyRow, 4)).Value 14 pasteRange.Resize(, 1).Offset(, 5).Value = copySheet.Cells(copyRow, 6).Value 15 End If 16 Next
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。