「入力シート」のようにデータが表示される Excel シートがあります。T1 または T2 が各行に存在する場合、VBscript を使用して検索する必要があります。見つかった場合、「Task compdate」列は、次のタスクの「Stardate」列から値をコピーする必要があります。
入力シート:
Activity Task1 Task1 Stardate Task1 Compdate Task2 Task2 Stardate Task2 Compdate Task3 Task3 Stardate Task3 Compdate
A1 T1 02/01/2012 T1 04/01/2011 T3 09/02/2011
A2 T2 02/01/2012 T2 04/01/2011 T3 09/02/2011
A3 T1 02/01/2012 T4 04/01/2011 T3 09/02/2011
出力シート:
Activity Task1 Task1 Stardate Task1 Compdate Task2 Task2 Stardate Task2 Compdate Task3 Task3 Stardate Task3 Compdate
A1 T1 02/01/2012 04/01/2011 T1 04/01/2011 09/02/2011 T3 09/02/2011
A2 T2 02/01/2012 04/01/2011 T2 04/01/2011 09/02/2011 T3 09/02/2011
A3 T1 02/01/2012 04/01/2011 T4 04/01/2011 T3 09/02/2011
更新コード:
IntRow6=2
Do While objSheet6.Cells(IntRow6,1).Value <> ""
DataCount=0
For DataCount=0 to UBound(VMHArray)
Set rSearch = objSheet6.Cells(IntRow6,1).EntireRow
Set rFound = rSearch.Find(VMHArray(DataCount))
If Not rFound Is Nothing Then
adrFirst = rFound.Address
Do
objSheet6.Cells(IntRow6,rFound.Column + 2)= objSheet6.Cells(IntRow6,rFound.Column + 5)
Set rFound = rSearch.FindNext(rFound)
Loop Until rFound.Address = adrFirst
End If
Next
IntRow6=IntRow6+1
Loop
ありがとう