アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルで、特定の文字が入った行のみ非表示にしたいです。
具体的には、以下のような表がA社~Z社まであるとして、「2016年度」の行のみ非表示にしたいです。
A社    100,000円
2016年度  50,000円
前年比    200%

マクロだと思うのですが、1クリックで「非表示」「再表示」にすることは出来ますでしょうか。

よろしくお願い致します。

質問者からの補足コメント

  • HAPPY

    すみません、出来ました!!!
    出来ましたーー!!!!!

    ありがとうございます!!!!

    とってもとっても助かりました!!

    No.2の回答に寄せられた補足コメントです。 補足日時:2017/11/16 10:48

A 回答 (2件)

こんばんは!



>1クリックで・・・

A1セルをダブルクリックすると・・・の操作にしてみました。

尚、該当データはA列に入っているという前提です。
↓のコードをシートモジュールにし、A1セルをダブルクリックしてみてください。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i As Long, myRng As Range, myFlg As Boolean
If Target.Address = "$A$1" Then
Cancel = True
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If Rows(i).Hidden = True Then
myFlg = True
Exit For
End If
Next i
If myFlg = False Then
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If Cells(i, "A") = "2016年度" Then
If myRng Is Nothing Then
Set myRng = Cells(i, "A")
Else
Set myRng = Union(myRng, Cells(i, "A"))
End If
End If
Next i
If Not myRng Is Nothing Then
myRng.EntireRow.Hidden = True
End If
Else
ActiveSheet.Rows.Hidden = False
End If
End If
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

早速ご回答頂きましてありがとうございます!!
ただ、、マクロ、ド初心者でして、このままコピペしてみたのですが何も起こりません・・。

元のエクセルの状態からAlt+F11 でコード入力画面を起動し、F7でコードコード画面を出し、
このままコピペしてみました。

緑の三角のコード起動を押しますと、「マクロ名」を入れなければなりません。
ここには何を記載すれば良いのでしょうか?

お手数をお掛けしますが、再度教えて頂けますでしょうか。
よろしくお願いいたします。

お礼日時:2017/11/16 10:17

No.1です。



今回の場合はダブルクリックイベントなので、シートモジュールにしなければなりません。

画面左下の操作したいシート見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに
前回のコード(Private Sub・・・~End Sub)をコピー&ペースト → Excel画面に戻り(VBE画面を閉じて)
A1セルをダブルクリックしてみてください。

※ 前回書き忘れましたが、A1セル(1行目)は非表示にならない!というコトが大前提です。
(すなわちA1セルには「2016年度」は入らない!)m(_ _)m
この回答への補足あり
    • good
    • 0
この回答へのお礼

ありがとうございます!
その通りにしてみたのですが、砂時計は出ますが何も起こりません・・・泣

ちなみに、このA社~Z社がずっと下まであり、4月~9月まで右側に続いています。
これは関係ないですよね・・?
(5月以降消してやってみましたが、同じでした><)

うーーーん、、せっかくご丁寧に教えて下さっているのに出来ず不甲斐ないです。。

何かヒントがあれば。。再度教えて頂けると嬉しいです。
スイマセン・・

よろしくお願いいたします!!

お礼日時:2017/11/16 10:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!