2017-10-06 3 views

答えて

1

を数式を書きたくない上記のように複数のシート

Sheets("Dashboard").Select 
Range("D5").Select 
Selection.Formula = "=COUNTIF(Sheet2!E:E,""Passed"")" 

のためにループで行うには、どのようにループスルーですワークブック内のすべてのワークシート:(Select

Dim sh As Worksheet 
    For Each sh In ActiveWorkbook.Worksheets 
    If sh.Name <> "NameOfSheet" Then 
     sh.Range("D5").Formula = "=COUNTIF('" & sh.Name & "'!E:E,""Passed"")" 
    End If 
    Next 
+0

実際Iは、式シート値にループを追加する必要があり、 "= COUNTIF(シート2 E:Eは、" "" 合格 ")" 例えば選択範囲 範囲( "D5")を選択 Selection.Formula = "= COUNTIF(シート2!E:E" "合格" ")"シート( "ダッシュボード")選択 範囲"D5")を選択します。 Selection.Formula = "= COUNTIF(Sheet3!E:E、"合格 "") " – user1763769

+0

シート名を変数として使用するように更新されました。 – braX

+2

'ActiveWorkbook'を使用する必要はほとんどなく、このようなコードに悲惨な影響を与える可能性があります。私は、将来的に、または特定のワークブックを直接参照して、 'ThisWorkbook'を使うことを強く勧めます。 – CallumDA

関連する問題