Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11153 / 13644 ツリー ←次へ | 前へ→

【17819】特定の列を非表示にするには? とものよこ 04/9/8(水) 13:24 質問[未読]
【17820】Re:特定の列を非表示にするには? IROC 04/9/8(水) 13:31 回答[未読]
【17821】Re:特定の列を非表示にするには? とものよこ 04/9/8(水) 13:45 質問[未読]
【17822】Re:特定の列を非表示にするには? IROC 04/9/8(水) 14:15 回答[未読]
【17824】Re:特定の列を非表示にするには? とものよこ 04/9/8(水) 14:40 質問[未読]
【17826】Re:特定の列を非表示にするには? IROC 04/9/8(水) 15:25 回答[未読]
【17828】Re:特定の列を非表示にするには? とものよこ 04/9/8(水) 15:38 質問[未読]
【17829】Re:特定の列を非表示にするには? とものよこ 04/9/8(水) 15:46 発言[未読]
【17831】Re:特定の列を非表示にするには? Asaki 04/9/8(水) 15:57 回答[未読]
【17833】Re:特定の列を非表示にするには? IROC 04/9/8(水) 16:02 回答[未読]
【17834】Re:特定の列を非表示にするには? とものよこ 04/9/8(水) 16:07 お礼[未読]

【17819】特定の列を非表示にするには?
質問  とものよこ  - 04/9/8(水) 13:24 -

引用なし
パスワード
   お世話になります。
過去ログもいろいろみたのですが、検討がつかないので、ご相談させてください。
→のところで、必ずエラーになります。
「実行時エラー13:型が一致しません。」と出て、終了ボタンを押すと、
指示どおり非表示になっています。
どうやったらこのエラーを回避できるのでしょうか?

Sub Hidden()
  Dim C As Range

  Application.ScreenUpdating = False
  For Each C In ActiveSheet.UsedRange
→   If C.Value = "■" And C.EntireColumn.Hidden = False Then
     C.EntireColumn.Hidden = True
   End If
  Next
  Application.ScreenUpdating = True
End Sub

【17820】Re:特定の列を非表示にするには?
回答  IROC  - 04/9/8(水) 13:31 -

引用なし
パスワード
   こちらではエラーになりませんでしたので、
シートに問題があるかもしれませんので、
F8キーでステップ実行して、
どこのセルでエラーになるのか調べてみてはいかがでしょう?

【17821】Re:特定の列を非表示にするには?
質問  とものよこ  - 04/9/8(水) 13:45 -

引用なし
パスワード
   >シートに問題があるかもしれませんので、
>F8キーでステップ実行して、
>どこのセルでエラーになるのか調べてみてはいかがでしょう?

IROCさん、早速のお返事ありがとうございます。
F8で確認したのですが、どこのセルかは不明です。
ちなみに、■が入力されているセルは、「J1:Y1」を調べて、
非表示にさせたいのですが・・・。

シートに問題があるのでしょうか?それはどういうものが考えられますか?
初歩的な質問ですみません。

【17822】Re:特定の列を非表示にするには?
回答  IROC  - 04/9/8(水) 14:15 -

引用なし
パスワード
   >F8で確認したのですが、どこのセルかは不明です。

ローカルウィンドウで 変数 c の値を確認するか、
msgbox c.address
を加えて、確認して下さい。

【17824】Re:特定の列を非表示にするには?
質問  とものよこ  - 04/9/8(水) 14:40 -

引用なし
パスワード
   >ローカルウィンドウで 変数 c の値を確認するか、
>msgbox c.address
>を加えて、確認して下さい。

すみません、おっしゃってる意味がよくわかりません。
初心者ですので、大変申し訳ありません。
お手数ですが、再度詳しく教えていただけませんか?

ローカルウィンドウを表示するところまではできました。
ですが、何も入力できないです。

>msgbox c.address
>を加えて、確認して下さい。
というのも、どういう作業をすればよいのか判りません。

【17826】Re:特定の列を非表示にするには?
回答  IROC  - 04/9/8(水) 15:25 -

引用なし
パスワード
   For Each C In ActiveSheet.UsedRange
 
  msgbox c.address 'ここに追加

   If C.Value = "■" And C.EntireColumn.Hidden = False Then
     C.EntireColumn.Hidden = True
   End If
Next


です。

【17828】Re:特定の列を非表示にするには?
質問  とものよこ  - 04/9/8(水) 15:38 -

引用なし
パスワード
   何度もありがとうございます。

$B$1

と表示が出ました。
ちなみに、B1には「Region」と文字を入れてます。

J1:Y1だけを調べて、■が入っている列を
非表示にさせたいのですが。

J1:Y1までを調べるとなると、どうすればよいでしょうか?
ご教授願います。

【17829】Re:特定の列を非表示にするには?
発言  とものよこ  - 04/9/8(水) 15:46 -

引用なし
パスワード
   >何度もありがとうございます。
>
>$B$1
>
>と表示が出ました。
>ちなみに、B1には「Region」と文字を入れてます。
>
>J1:Y1だけを調べて、■が入っている列を
>非表示にさせたいのですが。
>
>J1:Y1までを調べるとなると、どうすればよいでしょうか?
>ご教授願います。

度々すみません。
F8でチェックしていると、$B$1から始まって、
$C$1、$D$1・・・・$AQ$1、
$C$2、$D$2・・・・$AQ$2、と延々続きます。

(どうなってるのか判らない状態です(;_;))

【17831】Re:特定の列を非表示にするには?
回答  Asaki  - 04/9/8(水) 15:57 -

引用なし
パスワード
   こんにちは。

あまり良く見てませんが
>For Each C In ActiveSheet.UsedRange

For Each C In ActiveSheet.Range("J1:Y1")
?

【17833】Re:特定の列を非表示にするには?
回答  IROC  - 04/9/8(水) 16:02 -

引用なし
パスワード
   ループの範囲の指定が間違っているだけのようですね。

各単語の意味を理解せずに使用しているならば、
VBEのヘルプで調べてから使った方が良いですよ。

【17834】Re:特定の列を非表示にするには?
お礼  とものよこ  - 04/9/8(水) 16:07 -

引用なし
パスワード
   IROCさん、Asakiさん、ありがとうございました。
無事解決いたしました。
_(._.)_

今後はもっと勉強に励みます。本当にありがとうございました。

11153 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free