[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『列の表示の切替え』(MEGU)
先ほど一つのボタンでの「表示/非表示」の切替えは教えていただいてできたのですが・・・。
一つのボタンで順次切替えってできるのでしょうか?
「列」なのですが、一つのボタンで、「G-R 非表示」⇒「G-AD 非表示」⇒「全表示」
⇒「G-R 非表示」・・・といったように列の表示を切り替えたいのですが。
難しいでしょうか?
よろしくお願いします。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
こんな感じ?
Private Sub CommandButton1_Click()
Static myClick As Long
Columns("g:ad").Hidden = False
myClick = myClick + 1
If myClick > 2 Then myClick = 0
Select Case myClick
Case 1: Columns("g:r").Hidden = True
Case 2: Columns("g:ad").Hidden = True
End Select
End Sub[/code]
(seiya) 2014/11/15(土) 18:57
typo訂正 19:46
Sub test()
With ActiveSheet.Buttons(Application.Caller)
Select Case .Caption
Case "G-R 非表示に"
Columns("G:R").Hidden = True
.Caption = "G-AD 非表示に"
Case "G-AD 非表示に"
Columns("G:AD").Hidden = True
.Caption = "全表示に"
Case Else
Columns("G:AD").Hidden = False
.Caption = "G-R 非表示に"
End Select
End With
End Sub
(マナ) 2014/11/15(土) 19:48
(マナ)さんのやり方でやったらできました。
全表示の手前に「G-BB非表示」と追加したいのですが、どこに入れたらよいのでしょうか?
素人ですみません。
(MEGU) 2014/11/15(土) 20:17
Sub test2()
With ActiveSheet.Buttons(Application.Caller)
Select Case .Caption
Case "G-R 非表示に"
Columns("G:R").Hidden = True
.Caption = "G-AD 非表示に"
Case "G-AD 非表示に"
Columns("G:AD").Hidden = True
.Caption = "G-BB非表示に" '★
Case "G-BB非表示に" '★
Columns("G:BB").Hidden = True '★
.Caption = "全表示に"
Case Else
Columns("G:BB").Hidden = False '★2
.Caption = "G-R 非表示に"
End Select
End With
End Sub
(マナ) 2014/11/15(土) 20:41
参考程度に
Sub test2()
Dim x As Boolean, y As Boolean, z As Boolean
Dim cap As Variant
cap = Array("g-r", "g-ad", "g-bb", "表示")
x = Columns("g:r").Hidden
y = Columns("s:ad").Hidden
z = Columns("ae:bb").Hidden
Columns("g:r").Hidden = Not (y And z)
Columns("s:ad").Hidden = x Xor z
Columns("ae:bb").Hidden = (Not z) And (x And y)
With ActiveSheet.Buttons(Application.Caller)
.Caption = cap((Abs(x + y + z) + 1) Mod 4)
End With
End Sub
ちょっと 算数っぽいですけど・・。
もっともこれを 仕事で請け負ったとしたら、このコードには しませんけどね
わかりづらいし、もう一個追加されたら、結構面倒ですし・・・。
配列は、使うと思いますけどねえ
(ichinose) 2014/11/15(土) 21:22
(マナ) 2014/11/15(土) 21:28
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.