さまざまな標準オプションから装飾の選択を指定するスプレッドシートを作成しました。
5つの個別の範囲があるため、これが最初の選択であり、各範囲内に追加の選択があります。
そのため、シートの開始時に「フレーム」と5つの「ラジオボタン」を使用し、この選択をcellにリンクしましたP1
。
したがって、この選択が行われたら、さまざまな行を非表示にして、最初の選択に関連する選択(範囲1に関連する行10〜19、範囲2に関連する行20〜29など)のみを表示します。
以下は私の「コード」ですが、ラジオボタンの選択を変更しても何もしません(セルの値がP1
期待どおりに変化するのを見ることができます)。
Sub HideShow()
'
' HideShow Macro
' Show only the selection pane assocated to the Design line selection
If Range("P1").Value = 1 Then ‘Decoration Range A
Rows("10:19").Select
Selection.EntireRow.Hidden = False
Rows("20:59").Select
Selection.EntireRow.Hidden = True
ElseIf Range("P1").Value = 2 Then 'Decoration Range B
Rows("10:19").Select
Selection.EntireRow.Hidden = True
Rows("20:29").Select
Selection.EntireRow.Hidden = False
Rows("30:59").Select
Selection.EntireRow.Hidden = False
ElseIf Range("P1").Value = 3 Then 'Decoration Range C
Rows("10:29").Select
Selection.EntireRow.Hidden = True
Rows("30:39").Select
Selection.EntireRow.Hidden = False
Rows("40:59").Select
Selection.EntireRow.Hidden = False
ElseIf Range("P1").Value = 4 Then 'Decoration Range D
Rows("10:39").Select
Selection.EntireRow.Hidden = True
Rows("40:49").Select
Selection.EntireRow.Hidden = False
Rows("50:59").Select
Selection.EntireRow.Hidden = False
ElseIf Range("P1").Value = 5 Then 'Decoration Range E
Rows("10:49").Select
Selection.EntireRow.Hidden = True
Rows("50:59").Select
Selection.EntireRow.Hidden = False
End If
End Sub
私はおそらく最終選択を本当に必要としないことを知っています(A、B、C、またはDでなければ、Eにしかできません)が、すっきりさせるためにそれを入れました。
また、セル値をテキストとして試しましたElseIf Range("P1").Value = "5" Then...
が、そこには喜びもありませんでした。
どんなガイダンスも感謝します。
コードがヒットしているかどうかわからない場合は、「If」の前にMsgBoxをポップします。MsgBox "P1 ="&Range( "P1")。value
—
mcalex 14年