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

質問です。
タイトル通りなのですが、Excel2013を使用中です。
支払い台帳ファイルなのですが、弊社は取引業者数が多く、当月では取引しない業者も多く、非表示/表示ボタンをクリック一つで業者別計(N行目)の値が0だった場合、その該当業者(列)すべてを非表示にしたいのです。
何卒諸先輩方のご教示を宜しくお願いいたします。

A 回答 (3件)

こんばんは!



>(N行目)の値が0だった場合、その該当業者(列)すべてを非表示にしたいのです。

>N列の値が「0」の場合、その「行」すべてを非表示・・・
というコトだとします。

↓の画像「ActiveX コントロール」のコマンドボタンを挿入し、
コマンドボタンのコードを↓のようにしています。

Private Sub CommandButton1_Click()
With ActiveSheet
If .AutoFilterMode = True Then
.AutoFilterMode = False
Else
Rows(1).AutoFilter field:=14, Criteria1:="<>0"
End If
End With
End Sub

これでコマンドボタンをクリックするたびにN列が「0」の行が
表示・非表示になると思います。

※ 的外れならごめんなさいね。m(_ _)m
「EXCELマクロで、ある列の値が0の場合」の回答画像2
    • good
    • 3
この回答へのお礼

ありがとうございます。ドンピシャです!!
早速多用させて頂きます。ありがとうございました。

お礼日時:2015/03/17 18:27

No.1です。

添付図参照
N行目を10行目としています
「EXCELマクロで、ある列の値が0の場合」の回答画像3
    • good
    • 2
この回答へのお礼

ご回答ありがとうございました。なるほど、そういう意味だったのですね。
勉強になりました。ありがとうございます。

お礼日時:2015/03/17 18:28

Sub N行目の値が0のとき非表示にする()



Const N = 10 'N行目
   
   Dim A As Long
   Dim E As Long
   
   '末尾の列番号を取得する。場合に応じて、-1などする必要がある
   E = Cells(N, Cells.Columns.Count).End(xlToLeft).Column
   
   For A = E To 2 Step -1
       If Cells(N, A).Value <> "" _
       And Cells(N, A).Value = 0 Then
           Columns(A).Hidden = True
       Else
           Columns(A).Hidden = False
       End If
   Next A
End Sub
もっときれいなやり方がありそうな、、、m(_ _)m
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
Const N = 10 というのはどういう意味なのでしょうか?
うまくいかないのでもう少し詳しく書かせて下さい。
N行目に0(=取引額が0)という数字のある列(業者名)に対して、その該当するすべての列(業者名)をボタンクリックにより非表示/表示切り替えをしたいのです。言葉足らずで申し訳ございませんが、引き続きご回答お待ちしております。

お礼日時:2015/03/16 19:08

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A