首页 > 解决方案 > excel 2016中可以更换IFS吗

问题描述

我正在使用 office 365,并且正在为使用 excel 2016 的人创建一个 WB。我的代码在最后一行的列的所有单元格中插入一个“IFS”公式。问题是 IFS 在 2016 年不可用,因此代码对他们来说失败但对我有用。有没有办法更改以下代码以在 2016 年工作?当他们运行宏时获取#NAME?

Dim Lastrow As Long
Lastrow = Range("A" & Rows.Count).End(xlUp).Row
Range("G2").Select
ActiveCell.FormulaR1C1 = _
    "=IFS(RC[-2]=""2nd Shift 1.05"",""2"", RC[-2]=""2nd Shift     
Overtime"",""2"",TRUE,"""")" 
Range("G2").Select
Selection.AutoFill Destination:=Range("G2:G" & Lastrow)
Range("E2").Select
End Sub

标签: excelvbaifs

解决方案


   Dim LastCall As Long
    Dim y As Long
    LastCall = Range("A" & Rows.Count).End(xlUp).Row
    For y = 2 To LastCall
        If Range("E" & y).Value = "2nd Shift 1.05" Then
            Range("G" & y).Value = "2"
    End If
    Next y

    LastCall = Range("A" & Rows.Count).End(xlUp).Row
    For y = 2 To LastCall
        If Range("E" & y).Value = "2nd Shift Overtime" Then
            Range("G" & y).Value = "2"
    End If
    Next y
End Sub

推荐阅读