Excelマクロにはかなり新しいので、次のマクロがMacとWinの両方のExcelを粉砕している理由はわかりません。したがって、私は数式を簡略化して、多くのifを1つの数式に減らしたいと考えています。助けてもらえますか?Excelマクロの実行が粉砕され、数式を簡略化しようとしています
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range("B8")
If Range("B8").Value = "0" Then
Rows("14:24").EntireRow.Hidden = True
Rows("13").EntireRow.Hidden = False
Range("B14:B24").Clear
Worksheets("Sheet1").Range("B9").Value = "Open"
End If
If Range("B8").Value = "1" Then
Rows("15:24").EntireRow.Hidden = True
Rows("13:14").EntireRow.Hidden = False
Worksheets("Sheet1").Range("B9").Value = "Open"
Range("B15:B24").Clear
End If
If Range("B8").Value = "2" Then
Rows("16:24").EntireRow.Hidden = True
Rows("13:15").EntireRow.Hidden = False
Worksheets("Sheet1").Range("B9").Value = "Open"
Range("B16:B24").Clear
End If
If Range("B8").Value = "3" Then
Rows("17:24").EntireRow.Hidden = True
Rows("13:16").EntireRow.Hidden = False
Worksheets("Sheet1").Range("B9").Value = "Open"
Range("B17:B24").Clear
End If
If Range("B8").Value = "4" Then
Rows("18:24").EntireRow.Hidden = True
Rows("13:17").EntireRow.Hidden = False
Range("B18:B24").Clear
End If
If Range("B8").Value = "5" Then
Rows("19:24").EntireRow.Hidden = True
Rows("13:18").EntireRow.Hidden = False
Range("B19:B24").Clear
End If
If Range("B8").Value = "6" Then
Rows("20:24").EntireRow.Hidden = True
Rows("13:19").EntireRow.Hidden = False
Range("B20:B24").Clear
End If
If Range("B8").Value = "7" Then
Rows("21:24").EntireRow.Hidden = True
Rows("13:20").EntireRow.Hidden = False
Range("B21:B24").Clear
End If
If Range("B8").Value = "8" Then
Rows("22:24").EntireRow.Hidden = True
Rows("13:21").EntireRow.Hidden = False
Range("B22:B24").Clear
End If
If Range("B8").Value = "9" Then
Rows("23:24").EntireRow.Hidden = True
Rows("13:22").EntireRow.Hidden = False
Range("B23:B24").Clear
End If
If Range("B8").Value = "10" Then
Rows("24").EntireRow.Hidden = True
Rows("13:23").EntireRow.Hidden = False
Range("B24").Clear
End If
If Range("B8").Value = "11" Then
Rows("13:24").EntireRow.Hidden = False
End If
End Sub
あなたが見ることができるように、式のロジックは次のとおりですB8の値が高いほど、13と24の間に以下の行が隠されています。 B8の値が小さいほど、隠れた行の数が多くなり、隠れた行の値がクリアされます。
大変ありがとう、Shai! – Michael
@マイケル同じプロジェクトのために私の答え –
の隣に少し** V **をクリックして回答としてマークしてください。あなたは私にこの解決策を与えることができますか? http://stackoverflow.com/questions/41810456/search-which-cell-contains-a-specific-text-and-modify-an-offset-cellתודהרבהלךin advance! – Michael