エクセルで。
例えば、100行の表があって、1行目から順番にデータを入れていくんですが、
データが50行までで終わってしまった場合に、51行目からを、非表示にしたいのです。
Aドライブからのデータの読み込みは、マクロをつかっているので、できればそのあとに文章をくっつけて、1つのマクロで作業を完了したいのです。
具体的に言いますと・・・
A列には1~100までの数字が入力してあります。
B~E列には取り込んだデータ(数字)をVLOOK関数で文字に変換するようになってます。
それ以降は、固定した単位(m3)や、データの数字がそのまま入る・・・という感じです。
そして、101行目はそれぞれの列の合計を出すようにしてます。
つまり、データを読み込んだあと、例えば50行しかデータが無かったら(B50やC50などが空白だったら)、51行目から100行目までをいわゆる『表示しない』にしたいのです。
だいぶ考えましたが・・・・。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
質問内容からすると、B~E列は100行目までVLookUpの算式が入っているような気がしますので、その前提でのマクロです。
データを読み込んだ後、データの数分の算式を書き込んでいれば別の話になってしまいますが。100行目が入力ありの時、100行目からEnd(xlUp)を行うと1行目を返したりするはずなので上から順に逐一調べています。1行目も使用している前提です。
また、質問の意味からは途中には見た目空白の行はないように思えますが、途中行のB列のVLookUpの帰り値が長さ0の文字列(""です)の行は非表示にしてしまいます。
ご参考に。
Sub rowHidden()
Const DataRowMax = 100 'データの最終行
Dim rw As Integer '行カウンタ
Application.ScreenUpdating = False '画面更新をストップ
For rw = 1 To DataRowMax
Rows(rw).Hidden = False '一旦表示にする
If Cells(rw, 2).Text = "" Then
Rows(rw).Hidden = True '非表示にする
End If
Next
Application.ScreenUpdating = True '画面更新
End Sub
うまくいきました。
周りの誰に聞いてもわからなかったことなのに、さすがnishi6さん!!!
先に回答いただいたお二人には、ワタクシの質問の仕方が悪く、本当に申し訳なかったです。
多分お二人とも、すごく詳しい方たちなんでしょうねえ。
nishi6さんに回答をいただくのは3回目だから、多分ワタクシのレベルがおわかりになっておられて、わかりにくい質問でも、意味が通じたのでしょう。
ただ、こういう質問を文章で書くのって本当に難しいです。
また、質問させて下さい。ありがとうございました。
No.2
- 回答日時:
pc-cadさんこんにちは
こんな感じでしょうか
Sub SAMPLE()
Dim usedCellCount As Integer
'↓B列に何行目まで入力されているかを取得
usedCellCount = Range(Cells(100, 2).End(xlUp).Address).Row
'↓100行目まで入力されていたらhiddenを実行しない
If usedCellCount = 100 Then Exit Sub
'↓入力されている次の行から100行目までを非表示
Rows(usedCellCount + 1 & ":100").Hidden = True
End Sub
注意事項として、すべての行のHiddenのプロパティを一度Falseにして
(一旦すべての行を表示して)この処理を行った方がよいでしょう。
EXCEL2000 Win98seにて動作確認
ありがとうございます。
せっかく教えていただいたのですが、思う通りにいきませんでした。
動作確認までしていただいたのに・・・。
ワタクシの説明のしかたが悪かったのだと思います。
ご好意感謝いたします。
No.1
- 回答日時:
こんにちは。
maruru01です。オートフィルタを使うのはどうでしょう。
コードはこんな感じです。
1行目に項目があるとして、A102には"合計"という文字が入っているとします。
Range("A1:E102").Select
Selection.AutoFilter
'とりあえずB列にフィルタをかけて、空白以外を抽出
Selection.AutoFilter Field:=2, Criteria1:="<>"
'A列にフィルタをかけて、A列の値<=50と合計のみ抽出
Selection.AutoFilter Field:=1, Criteria1:="<=50", Operator:=xlOr, Criteria2:="=合計"
フィルタをかけるのは、どちらか一方だけにして下さい。
参考になりましたら、幸いです。
です。
ありがとうございます。
せっかく教えていただいたのですが、思う通りにいきませんでした。
ワタクシの説明のしかたが悪かったのだと思います。
ご好意感謝いたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) [オートフィルター]機能について 3 2023/02/04 14:32
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Visual Basic(VBA) vbaについて 主に以下のような設定をしたいです。 Aブックの表の行数が20未満だったら Bブックの 1 2023/06/08 23:40
- Visual Basic(VBA) エクセルVBAについて 2 2023/01/31 16:21
- Excel(エクセル) 非表示にしたい行をグループ化して折り畳み 4 2022/09/17 20:17
このQ&Aを見た人はこんなQ&Aも見ています
-
好きな人を振り向かせるためにしたこと
大好きな人と会話のきっかけを少しでも作りたい、意識してもらいたい…! 振り向かせるためにどんなことをしたことがありますか?
-
人生最悪の忘れ物
今までの人生での「最悪の忘れ物」を教えてください。 私の「最悪の忘れ物」は「財布」です。
-
最強の防寒、あったか術を教えてください!
とっても寒がりなのですが、冬に皆さんがされている最強の防寒、あったか術が知りたいです!
-
【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
「出身中学と出身高校が混ざったような校舎にいる夢を見る」「まぶたがピクピクしてるので鏡で確認しようとしたらピクピクが止まってしまう」など、 これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
特定のセルが空白だったら、その行を非表示にしたい。。。
Visual Basic(VBA)
-
EXCEL VBA 指定範囲内で特定の列に空白セルを含む行を非表示
Excel(エクセル)
-
特定のセルが空白の行を非表示にするマクロについて
Excel(エクセル)
-
-
4
エクセルで行の自動非表示の方法は
Excel(エクセル)
-
5
指定した条件で行セルを非表示にするVBAについて
Visual Basic(VBA)
-
6
エクセルで特定の列が0表示の場合、その行を非表示にしたい
Excel(エクセル)
-
7
条件に応じて特定の行を非表示にしたい
Excel(エクセル)
-
8
数式の結果が空白の時の空白扱い
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで日付から日にちを削...
-
Excelで2行単位のソートの出来...
-
Countifよりも早く重複数をカウ...
-
複数の条件に合う行番号を取得...
-
エクセルで、重複データを除外...
-
エクセルで1列に500行並んだデ...
-
Excelの30個ずつの平均値の出し方
-
excel:別シートの値を飛び飛び...
-
Excelの関数でこんな処理ができ...
-
Excelでデータベースを構築した...
-
エクセルで並び替えをしたあと...
-
エクセルで1つの会社名に対して...
-
500行の中から、多い順に抽出す...
-
【VBA】A列にある連続したデー...
-
エクセルで別々な2つのデータを...
-
Excel VBA 【QueryTables.Add】...
-
エクセルで横並びの複数データ...
-
エクセルVBA C列に特定の文字列...
-
Excelで同じセルに箇条書きをし...
-
エクセルの複数のセルを一括で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで日付から日にちを削...
-
Excelで2行単位のソートの出来...
-
複数の条件に合う行番号を取得...
-
エクセルで1列に500行並んだデ...
-
Countifよりも早く重複数をカウ...
-
excel:別シートの値を飛び飛び...
-
エクセルで、重複データを除外...
-
Excelの30個ずつの平均値の出し方
-
VBA 数式を最終行までコピー
-
エクセルVBA C列に特定の文字列...
-
不要な行を消したい
-
エクセルで横並びの複数データ...
-
VBA 大きなtxtテキストファ...
-
エクセル2016にて、行挿入&コピ...
-
500行の中から、多い順に抽出す...
-
【エクセル】1列内に複数ある同...
-
エクセルで1つの会社名に対して...
-
エクセルで時刻だけを抜き出す...
-
差し込み印刷 «Next Record»に...
-
Excel VBA 【QueryTables.Add】...
おすすめ情報