advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 8934 for リスト (0.006 sec.)
[[20200624092822]]
#score: 2746
@digest: 029fab0bb99618cdc50eb6cfe3608184
@id: 84176
@mdate: 2020-07-02T06:25:40Z
@size: 6960
@type: text/plain
#keywords: ベト (16883), 国ab (15497), 国韓 (15241), 本aa (14111), 国a (13096), イaa (12851), ナム (12304), 韓国 (11035), 易版 (10477), 国名 (10465), 示非 (8948), トナ (6873), タ") (6132), 中国 (6107), specialcells (5876), 本中 (5629), 「リ (4557), entirecolumn (4260), ・質 (4034), ト「 (3640), hidden (3562), タ」 (3021), (no (2797), 「デ (2727), リス (2700), 視セ (2439), タ" (2439), ト」 (2399), 可視 (2387), 日本 (2236), ト") (2218), 列セ (2177)
『別シートのフィルタ結果を反映』(noa)
おはようございます。よろしくお願いします。 ブック1に「データ」と「リスト」ふたつのシートがあります。 シート「データ」には、資料が横並びに入っており、 シート「リスト」には、シート「データ」の簡易版が縦並びに入っています。 簡易版のシート「リスト」でフィルターをかけた結果で、 シート「データ」もフィルタというか、不要列を非表示にしたいのですが、 どのような方法があるでしょうか? たとえば下記でしたら、 シート「リスト」のC列「タイプ」でフィルタをかけてAAの国、日本とタイ だけを表示させたら、シート「データ」でも日本列とタイ列以外を 非表示にしたいです。 【シート「データ」】 A B C B E F ・・・・ 1見出し行列 2国名 日本 中国 韓国 タイ ベトナム 3コード 100 200 150 130 180 4タイプ AA AB A AA BA 5見出 ・・・・ 【シート「リスト」】 A B C 1見出 国名 タイプ 2 1 日本 AA 3 2 中国 AB 4 3 韓国 A 5 4 タイ AA 6 5 ベトナム BA < 使用 Excel:Excel2016、使用 OS:Windows10 > ---- Sub main() Dim c As Range Sheets("データ").Cells.SpecialCells(2).EntireColumn.Hidden = True For Each c In Sheets("リスト").Range("C:C").SpecialCells(2).SpecialCells(12) Sheets("データ").Columns(c.Row).EntireColumn.Hidden = False Next c Application.Goto Sheets("データ").Range("A1") End Sub (mm) 2020/06/24(水) 17:19 ---- 衝突しました。念のため。 こちらを参考にしてください。 「Excelで横方向にフィルターする」 https://www.excellence-blog.com/2018/01/30/excel%E3%81%A7%E6%A8%AA%E6%96%B9%E5%90%91%E3%81%AB%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E3%83%BC%E3%81%99%E3%82%8B/ (γ) 2020/06/24(水) 17:21 ---- mm様 γ様 ありがとうございます。 お礼が遅れて申し訳ありません。 mmさんのもので、間違いなく動くのですが、 内容が理解できていないため応用ができません。 specialcells(2).specialcells(12)あたりの意味を教えていただけませんか? (noa) 2020/06/29(月) 10:28 ---- 参考にどうぞ https://www.moug.net/tech/exvba/0050114.html (cai) 2020/06/29(月) 10:39 ---- cai様 ありがとうございます。 specialcells の意味がそもそも分かっていないのだと思うのですが、 ご提示いただいたようなページはいくつか見てみて、 それでも、mmさんが作ってくださった、 specialcells(2)←ここの数字は何を意味するのか specialcells(2).specialcells(12)←どうして二つ続いているのか、(12)ってなにを示すのか が、わからないのです。 (noa) 2020/06/29(月) 11:06 ---- specialcells(2) 定数が入力されたセル specialcells(12) 可視セル ですので、 specialcells(2).specialcells(12) 定数が入力された可視セル という意味(仕様)です。 (mm) 2020/06/29(月) 14:30 ---- mm様 え? xlCellTypeConstants と xlCellTypeVisible ってことですか? カッコの中の数字を入れ替えて試してみたりしてましたwww あらためて見てみると、caiさんが出してくださった参考ページにも 定数の横に「値」ってこの数字が書いてありますね。これのことですか・・・ (とは言っていますが、意味は分かっていません) ありがとうございます。 (noa) 2020/06/29(月) 15:11 ---- 重ねての質問、申し訳ありません。 mm様の書いてくださった形で希望通りのはずなのですが、実際のシートにあてはめてみると いろいろうまくいきません。 1つ目は「リスト」が別シートのデータ参照で作られていたので・・・ 本当は「リスト」はこのままで動くようにしたいですが、修正方法がわからないので、 とりあえず「リスト」全部を値貼り付けし直してこの問題はひとまず無視しました。 すると2つ目に、「リスト」でフィルターをかけ、「データ」でも同じものだけ表示するはずが、 「データ」側で「リスト」と関連性のなさそうなものが表示されてしまう、 という状態になりました。 例に使った簡易版ではうまくいったのですが。 実際のデータは ・質問に使った例よりはデータの量が多少多いです(最終セルがDZ80ぐらい・固定ではない) ・質問に使った例より見出し行列が多いです 「データ」はA1からD4まで見出し、「リスト」はA1からAHまで見出し 【シート 「データ」】 A B C D E F G ・・・DZ 1 空欄 2 空欄 3 国名 日本 中国 韓国 4 コード 100 200 150 5 タイプ AA AB A 6 気温 7 湿度 8 ・・・以下続く 【シート「リスト」】 A B C 1見出 国名 タイプ 2 1 日本 AA 3 2 中国 AB 4 3 韓国 A 5 4 タイ AA 6 5 ベトナム BA 「データ」の見出し行が多いので、表示非表示を開始する列をEからにしたいですが、 これもまだわからないので飛ばしました。 Sub main() Dim c As Range Sheets("データ").Cells.SpecialCells(2).EntireColumn.Hidden = True For Each c In Sheets("リスト").Range("C:C").SpecialCells(2).SpecialCells(12) Sheets("データ").Columns(c.Row).EntireColumn.Hidden = False Next c Application.Goto Sheets("データ").Range("A1") End Sub mmさんが作ってくださったのは、 「データ」シートの何か入っている行をすべて非表示にし、 「リスト」シートのC列の表示されているセルの値を、 「データ」と照らし合わせて一致するセルがある列を表示し、 それをC列で繰り返す。 という意味かなと思っていたのですが、合ってますでしょうか? (noa) 2020/06/30(火) 17:15 ---- あってます。 (mm) 2020/06/30(火) 17:57 ---- mm様 ありがとうございます。 「リスト」B列に入っている文字列(国名)で表示非表示をやりたいので、 Range("C:C") → Range("B:B") に変更しました。 表示非表示を開始したい「データ」のスタートがE3なので、 そのぶん右に+3(?)ずらしたいのですが、 Sheets("データ").Columns(c.Row).Entirecolumn.Hidden=False のところを変える?・・・としたらどう変えればよいですか? columns(c.Row) の意味がよく分かっていません。 (noa) 2020/07/01(水) 11:00 ---- 一度に質問をまとめられず申し訳ないです。 「リスト」をフィルタしたときに「データ」も表示非表示する、 この同じ作業をしたいという前提で、 「リスト」の一部セルが別のデータを参照していて、関数というか文字列になっていない場合、 何か解決方法はあるでしょうか。 (noa) 2020/07/01(水) 17:12 ---- Sub main() Dim c As Range, r As Range, rr As Range Set r = Range(Sheets("データ").Cells(3, 5), Sheets("データ").Cells(3, Columns.Count).End(xlToLeft)) r.EntireColumn.Hidden = True For Each c In Intersect(Sheets("リスト").UsedRange, Sheets("リスト").Range("B:B")).SpecialCells(12) Set rr = r.Find(c.Value, , , xlWhole) If Not rr Is Nothing Then rr.EntireColumn.Hidden = False Next c End Sub (mm) 2020/07/01(水) 18:07 ---- mm様 ありがとうございます!動きました! 入れ子な感じの条件も、ここまですっきりできるんですね。感動です。 分からないところがあるのですが、やりたいことは解決しましたので、 もしご面倒でなければ、お手すきのときに教えてください。 自分で作れるかどうかは別として、 "データ"の、3行E列セルから3行最終列セルまでの範囲で、値が入っている列を非表示し、 "リスト"の、B:B列で何か入っている、可視セルを参照し、 "データ"の上記と同じ範囲にを探して、完全一致するものがナシでなければ、非表示列を表示にする 対象の"リスト"のデータは値とする ということかなと読んだのですが(あってますでしょうか)、 下記の意味、特にカッコの中の,,,あたりがわかりません。 これはどういう意味なのでしょうか。 Set rr = r.Find(c.Value, , , xlwhole) (noa) 2020/07/02(木) 15:25 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/202006/20200624092822.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97065 documents and 608342 words.

訪問者:カウンタValid HTML 4.01 Transitional