セルの値をコピーして貼り付ける方法。セルに 0 より大きい値が含まれている場合は、ループによって別のセルに貼り付けます。

セルの値をコピーして貼り付ける方法。セルに 0 より大きい値が含まれている場合は、ループによって別のセルに貼り付けます。

コピーする必要があるC74細胞

次に貼り付けますC85からC88

条件1: 貼り付ける必要のない0より大きいセル

条件 2: どのセルに 0 があるかを調べ、C74 の値を貼り付けます。

*0が含まれるすべてのセルに貼り付ける必要はありません

* 0 が含まれる最初のセルに値を貼り付けるだけです。

2 セルまで試してみました。しかし、4 セルまで必要です。

誰か私を導いてください。

Sub TIMECALC()
ActiveSheet.Range("C74").Copy
If ActiveSheet.Range("C85").Value > 0 Then ActiveSheet.Range("C86").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False Else ActiveSheet.Range("C85").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Application.CutCopyMode = False
End Sub

スナップ

ここに画像の説明を入力してください

答え1

を使用しFor Each...て範囲をループしC85:C88、それらのセルの値が 0 より大きいかどうかを比較します。次に、true の場合は C74 の内容/値を貼り付けます。

Sub Calc()

    'Copy the cell
    Range("C74").Copy
    'Loop through each cell of the range
    For Each cell In Range("C85:C88")
        If cell.Value = 0 Then
            'Paste copied value
            cell.PasteSpecial Paste:=xlPasteValues
            'Exit the loop
            Exit For
        End If

    Next
End Sub

関連情報