0
次のコードでは、変数範囲 "rngCell"内の特定のセルを識別するのに最も苦労しています。 "If"文では、rngCellの値ではなく、rngCell(アクティブなセルがある)の列または行の特定のセルをコピーしたいと思います。私はオフセットを使用しようとしましたが失敗しています。例:rngCellがe42の場合、e2またはa42の値が必要な場合があります。VBA:可変範囲内のセル値のコピー
ありがとうございます。
Dim rngCell As Range
Dim lngLstRow As Long
Dim ws As Worksheet, resultsWS As Worksheet
lngLstRow = ws.UsedRange.Rows.Count
Worksheets("FileShares").Select
j = 4
p = 1
q = 4
g = 6
Dim k&
For k = 9 To 50
With ws
For Each rngCell In .Range(.Cells(8, k), .Cells(lngLstRow, k))
For i = LBound(maxKeywords) To UBound(maxKeywords)
If rngCell.Value = maxKeywords(i) And rngCell.Interior.ColorIndex = 3 Then
resultsWS.Cells(g, 2).Offset(j + p, 0) = rngCell.Value
g = g + 1
j = q + p - 5 'Used to start at row 8 and every row after
End If
Next i
Next rngCell
End With
Next k
これはコードの一部でしかありませんのでご注意ください。 – Vince
'ws'は決して割り当てられないので、あなたが私たちに見せているコードは、ランタイムエラー91で爆発します。 'FileShares'シートを' .Select 'する必要もありません。 –
[タイプヒント](http://stackoverflow.com/documentation/vba/877/declaring-variables/2960/type-hints#t=)を使用していないので、私は「Dim k& 20170426200910747442)どこでも。他のすべてと同じように明示的に名前付きの型を与えてみませんか? –