2017-06-06 13 views
0

私がしたいのは、sheetという名前の変数から特定のシート( "SUMMARY")にデータを転送することです。次に、変数シートのセルを検討したいと思います。したがって、セル> 0の場合は、行をSUMMARYにコピーします。しかし、私は 'オブジェクト変数またはWithブロック変数が設定されていません'エラーが発生しています。私は間違って何をしていますか?Excel VBA:変数シート名からのデータの転送、実行時エラー '91'

 Sub transfer() 

     Dim ws As String 
     Dim n As Integer 
     Dim i As Long 

     Dim c As Range 

     n = Sheets("Start").Range("c24").Value + 3 

     If n > 0 Then 
      For i = 3 To n 

       Dim desrow As Integer 
       desrow = i - 1 
       Dim rng As Range 

       rng = Range("AA11:AA40") 

        For Each c In rng 
         If c = 12 Then 

          Sheets("OFFLIMITS").Cells(desrow, 1).Value = Sheets(i).Range("C3") 

         End If 
        Next c 
      Next i 

     End If 

     End Sub 

答えて

1

あなたはSetオブジェクトなければならないので、あなたが言う必要があります。

Set rng = Range("AA11:AA40") 
+0

私は_Compileエラーに遭遇しています:メソッドまたはデータメンバは、そのコードをfound._ません。 –

+0

その行または別の行でエラーが発生していますか? (別の行の場合はどちらですか?)そして、その行にある場合、あなたのアクティブなシートは「ワークシート」か「チャート」ですか? – YowE3K

+0

@LiezlMaigue - また、その行であれば、投稿からコピー/貼り付けにいくつかの見えない無効な文字が含まれることがあるので、行を削除して手動でもう一度入力してみてください。 – YowE3K

関連する問題