2017-07-19 6 views
1

潜在的に非常に簡単な質問に対するお詫び。私は、コードは以下の一つである、あなたが行を検索し、別のワークシートに貼り付け方法についてのサイト上でいくつかのコードをトローリングた:VBA - "Cell"変数を宣言する方法

Sub Test() 
For Each Cell In Sheets(1).Range("J:J") 
    If Cell.Value = "131125" Then 
    matchRow = Cell.Row 
    Rows(matchRow & ":" & matchRow).Select 
    Selection.Copy 

    Sheets("Sheet2").Select 
    ActiveSheet.Rows(matchRow).Select 
    ActiveSheet.Paste 
    Sheets("Sheet1").Select 
    End If 
Next 
End Sub 

私は「セル」として宣言されなければならないと思いまして、以下のように:私は、「明示的なオプション」せずに、これは無関係であることを承知しているが、私はそれにもかかわらず興味

Dim Cell As ... 

、その助けをしてください、あなたができれば説明しています。

は、事前にご協力いただきありがとうございます:)

答えて

2

をお使いの場合には、cellはそう

dim cell as range 

そして、rangeです:常にを使用でき使用Option Explicit

0

Range。それらはやや互換性があります。疑問にVBAを依頼した場合の範囲にわたってウォーキング

2

は範囲をそうDim Cell As Range

得られますmsgbox TypeName(Cell)

0

申し訳ありませんが、それは恐ろしいコードであり、それは目を傷つけます。良いだろう検索し、ちょうどよりよい理解の関心で

Sub Test() 
Dim Cell as Range 
For Each Cell In Sheets(1).Range("J:J") 
     If Cell.Value = "131125" Then 
      Cell.EntireRow.copy Destination:=Sheets("Sheet2").range("a" & cell.row) 
      'You might want to exit here if there's only one value to find with 
      'Exit For 
     End If 
Next 

End Subの

関連する問題