0

ワークシート 1 がその月のインストール ジョブのリストである数式を設定しようとしています。顧客の詳細を示す列がいくつかあり、最後の列にはドロップダウン リストからジョブの進行状況が表示されます。

ジョブが「完了」している場合は、行全体を次のワークシート (ワークシート 2) にコピーし、ジョブが進行中の場合は次のワークシートに移動しません。

また、失敗した理由がいくつかあります。シート 1 からファイルされたジョブのリストを表示するために、このデータを (ワークシート 3) に転送することは可能でしょうか?

4

1 に答える 1

0
Sub copyJobs()
  Dim r1
  Dim r2
  Dim r3
  r1 = 1
  r2 = 1
  r3 = 1
  While Sheets("Sheet1").Range("A" & LTrim(Str(r1))) <> ""
    If Sheets("Sheet1").Range("B" & LTrim(Str(r1))) = "completed" Then
      Sheets("Sheet1").Range(LTrim(Str(r1)) & ":" & LTrim(Str(r1))).Copy
      Sheets("Sheet2").Range("A" & LTrim(Str(r2))).PasteSpecial xlPasteAll
      r2 = r2 + 1
    End If
    If Sheets("Sheet1").Range("B" & LTrim(Str(r1))) = "failed" Then
      Sheets("Sheet1").Range(LTrim(Str(r1)) & ":" & LTrim(Str(r1))).Copy
      Sheets("Sheet3").Range("A" & LTrim(Str(r3))).PasteSpecial xlPasteAll
      r3 = r3 + 1
    End If
    r1 = r1 + 1
  Wend
End Sub

列 A の値が空になるまで、シート 1 の行 1 から開始します。私の例では、ステータスは列 B にありましたが、もちろんこれを変更できます。

于 2013-10-04T11:05:38.787 に答える