0
私はConsulta
と呼ばれるこのシートを持っています。私は列Kの値を変更するたびに、空の場合は範囲Eの色をKまたは緑に変更します。異なる範囲にコピーするVBA
また、行が緑色の場合は、その行をE-mail
というシートにコピーします。私は実際に対応する範囲の代わりに別の範囲にコピーしたい
ws.Range("E" & i & ":K" & i).Copy ws1.Range("A" & i & ":G" & i)
:
Sub ChangeColor()
Dim ws As Worksheet, ws1 As Worksheet, i As Long, lastrow As Long
Set ws = Sheets("Consulta")
Set ws1 = Sheets("E-mail")
lastrow = ws.Cells(Rows.Count, "E").End(xlUp).Row
For i = 5 To lastrow
If ws.Range("K" & i) <> "" Then
ws.Range("E" & i & ":K" & i).Interior.ColorIndex = 43
ws.Range("E" & i & ":K" & i).Copy ws1.Range("A" & i & ":G" & i)
Else
ws.Range("E" & i & ":K" & i).Interior.ColorIndex = 2
End If
Next
If ws.Range("E" & i & ":K" & i).Interior.ColorIndex = 2 Then
ws1.Range("A" & i & ":G" & i).Clear
End If
End Sub
私の問題は、以下の行である:これは私がこれまで試したし、それがどのような作品ですシートE-mail
(たとえば、最初の一致がE3:K3の場合はA2:K2に、2番目の一致がE34:K34の場合はA3:K3にコピーして行きます)。
私は別のループを使用しようとしましたが、Excelが狂ったので、私は間違っていたと思います。
ご意見をお寄せください。
これだけです!ありがとう、私は完全に 'オフセット'を忘れてしまった。そしてあなたはその色について正しいです。 – paulinhax
私はこれが色が枯れたときに私の「クリア」を台無しにしてしまったが、私はそれを修正しようとします。 – paulinhax