エクセルの学校


[[20080117090646]] 『オートフィルタ時の行挿入』(のの2) >>BOT

[ 初めての方へ | 一覧(最新更新順) |

|
| 全文検索 | 過去ログ | HOME ]

 

 『オートフィルタ時の行挿入』(のの2)

 WIN…XP EXCEL…2003

 いつもお世話になっております。
 どなたかお知恵を貸してください。

 通常、オートフィルタをかけて使用しているデータに新規のデータを追加する際、
 名称A>名称B>管理番号>その他項目色々 をチェックして、一番近いものの
 下に行挿入して追加しています。

 が、オートフィルタをかけて行挿入すると、表示されている行の「上」に挿入
 されます。
 そのため、毎回(と言っても1日に多くて5件とかですが)オートフィルタを外し
 すべてのデータを表示した状態で行挿入をしています。

 このひと手間が面倒だな〜といつも思っていまして。

 オートフィルタのオンオフを簡単にする方法ってないのでしょうか。

 どれだけ不精なんだ?って思われるかも知れませんが…。
 何かいい方法があったら教えて下さい。宜しくお願い致します。


 オートフィルタをかけたまま行を挿入する方法です。

 例えば 100 行目の下に挿入するとして、
 (1) 名前ボックスに A101 と入力して Enter。
 (2) Altキー を 押したまま、i r と押す。

 どんなもんでしょう?
(純丸)(o^-')b


 私は、見つけだした行をコピー→挿入貼り付けして
 下側の行に新しいデータを入力していますが。
【1】	[A]		【2】	[A]		【3】	[A]		【4】	[A]
[1]	AAA  ▼		[1]	AAA  ▼		[1]	AAA  ▼		[1]	AAA  ▼
[2]	1		[3]	2		[3]	2		[2]	1
[3]	2					[4]	2		[3]	2
[4]	3								[4]	20
									[5]	3

 【1】「2」で絞り込んで
 【2】3行目をコピー、挿入貼り付け
 【3】4行目のデータを変更
 【4】絞り込み解除

 (HANA)

 ↑ この方が早いね。マウスだけで操作出来るし。
(純丸)(o^-')b

 入力する前からデータが入っているので(過去のデータ)
 書き直し忘れる可能性が有るのですけどね。
 特に「一番近いもの」と言うことですし。

 以前に絞り込んだ全ての情報がなくなって良いのなら
 オートフィルタを解除して、再度設定すると
 全ての行が表示されますよね。

 ちなみに、「解除→設定」を記録にとってみると
Sub Macro1()
    Selection.AutoFilter
    Selection.AutoFilter
End Sub
 これを実行すると、最初の状態により
 「解除→設定」若しくは「設定→解除」されます。
 実行するたびにオンオフを切り換えるなら、
 一行にしてしまえばよいかもしれません。

 (HANA)


 (純丸)さん (HANA)さん

 早速ありがとうございます。
 近い物がある場合は(HANA)さん、全くの新規の場合は(純丸)さんの方法で
 やってみます。
 ありがとうございます。

 (HANA)さん
 マクロは…いまだによくわかりません。
 でも、「設定←→解除」をしても、結局はR列の「内」「外」を選択しなければいけない
 のですよね?だったら…普通にフィルタの「内」と「すべて」を選びます。
 それとも、私の想定外の便利な方法なのでしょうか(・ω・;)
 (のの2)

 >R列の「内」「外」
 ってのは何ですかね?
 R列には「内」或いは「外」のどちらかの文字が入っていて
 探すときは「内」で探す・・・と言う事ですかね?

 私の想定と、のの2さんが実際になさりたい事の間には
 どの様な隔たりがあるか分かりません。

 私は、
  数カ所の絞り込みを行っていた際 数カ所全てで
  「全て表示」を選び、全ての行を表示するのが面倒だ
 と言うご質問かと思いましたが、そうではないのですか?

 具体的にある一つの項目を追加しようと思ったときに
 どの様な手順を踏んで居るのか。またその中でどの部分を改善したいのか。
 セル番地等使い順番に説明していただけると、何が手間だと思って居られるのか
 少しは分かるかもしれません。

 (HANA)

 (HANA)さん

 あまりにも説明不足ですみません。
 実は…最初に頂いたコメントの時点で「なんだか難しい事になってる?」と思いつつ、
 コピーして 行挿入すればやりたい事ができたので、良しとしていました。
 申し訳ないです。

 ファイルは…
 A〜U列までデータが入っていて、1行のデータの内容はある資料の詳細です。
 R列の項目は「期限」でその「期限」が切れているか、切れないかを「内」「外」で
 あらわし、▼←マウスを持っていったらこういうのが出るようになっていてどちらかを
 選択しています。
 通常は「期限内」のもののみを表示しておくのですが、調べ物をするときにはすべての
 データを見るときもあります。
 あと、データの追加をするときも、一旦すべてのデータを表示して行挿入していました。

 ですから、オートフィルタとしての機能はR列のみで使用していて、あとはほとんど
 使っていないのです。

 手間って言っても、R列の一番上に行って「内」になっているのを「すべて」にしている
 ただそれだけの事なんです。
 ほんとに不精な内容でごめんなさい(汗)
 (のの2)


 それでは、「何が簡単か」をお伺いする必要が有りそうです。

 たとえば、
  シートをスクロールさせるのが面倒だ
  小さい矢印を選ぶのが面倒だ
  項目(内・すべて 等)の場所を的確に選ぶのが面倒だ
 色々有ると思います。

 「マクロの記録」は試されましたか?
http://www.excel.studio-kazu.jp/lib/e4b/e4b.html
 マクロの記録は、のの2さんが行う手順を記録するものです。

 ○R列のオートフィルタで「すべて」を選ぶ
 と言う作業を、たとえば「Rすべて表示」と言うマクロ名で記録をとると
 次から「Rすべて表示」を実行するだけで、R列の絞り込みが解除されます。
 同様に
 ○R列のオートフィルタで「内」を選ぶ
 と言う作業を、「R内表示」と言うマクロ名で記録をとると
 次から「R内表示」を実行するだけで、R列の「内」での絞り込みが実行出来ます。

 実行方法は、ボタンに登録しても良いと思いますし
 ショートカットキーとして新たに作っても良いと思います。

 ちなみに、R列のオートフィルタで絞り込みをしている状態で
  1.メニューから、オートフィルタ解除
  2.メニューから、オートフィルタ設定
 をやってみて下さい。
 その後に再度↓の疑問を言葉をかえて仰ってみて下さい。
 >結局はR列の「内」「外」を選択しなければいけないのですよね?

 (HANA)

 (HANA)さん

 マクロの記録に関しては、以前チャレンジして躓いて以来やっていないので
 時間がたっぷりあるときに挑戦してみます。

 >ちなみに、R列のオートフィルタで絞り込みをしている状態で
 > 1.メニューから、オートフィルタ解除
 > 2.メニューから、オートフィルタ設定
 >をやってみて下さい。
 「オートフィルタの解除・設定」は、データ→フィルタ→オートフィルタにチェックを
 つける、または外す…という手順でいいんですよね?
 そうすると、フィルタのチェックを外すと全てのデータが表示されますが、もう一度
 チェックを入れた時には、フィルタのマークが付くだけでどこも絞り込まれていない
 状態になります。なので、再度R列の一番上に戻って「内」の項目に絞込みをしなくては
 いけないのです。
 (のの2)

 えっと・・・「解除・設定」の方法がとれる条件として
 「以前に絞り込んだ全ての情報がなくなって良いのなら」
 と書いております。

 のの2さんのご質問は
 「オートフィルタを外しすべてのデータを表示」
 「オートフィルタのオンオフを簡単にする」
 でした。
 「絞り込みの状態」ではなく「オートフィルタの状態」
 と読めたので、
 1.オートフィルタを解除すれば、全てのデータが表示される
 2.記録にとれば、「解除・設定」をメニューから二回実行しなくても
   全てのデータが表示されて、オートフィルタの設定がされた状態が作れる
 と言うレスを付けてみました。

 上の事をなさりたいのなら
  R列において、特定の条件で絞り込んだ状態と
  全てのデータが表示された状態を 簡単に切り換えたい
 と言う物言いになるのではないでしょうか?

 「マクロ」と言うとなかなか手がつけにくいと思いますが
 今回のような事で有れば、手間を省く為に時間を掛けるのは
 余り賢い方法とは言えないと思います。
 ですから、5分見つけて 次の事をやってみて下さい。
 1.R列で絞り込んだ状態で、記録開始
   i.マクロ名「R全表示」 ショートカットキー Ctrl + R
     マクロの保存先は「作業中のブック」
   ii.R列のオートフィルタで全て表示を選択
  iii.マクロの記録終了
 2.R列が全て表示されている状態で、記録開始
   i.マクロ名「R内表示」 ショートカットキー Ctrl + U
     マクロの保存先は「作業中のブック」
   ii.R列のオートフィルタで「内」を選択
  iii.マクロの記録終了

 次から、Ctrl + R で、全表示、Ctrl + U で「内」が絞り込まれた状態に出来ます。
 上手く行くようで有れば、ショートカットキーのアルファベットは お好みのものに変更して下さい。
 上手く行かない場合は、そのブック毎削除して於いて下さい。
 時間をとって、じっくりやってみられるのがよいでしょう。

 (HANA)

 (HANA)さん

 5分と書いてあるのを見て、チャレンジしてみました。
 結果は…うまくいきました〜(≧∀≦)
 マクロの記録ってこういう時に使えばいいんですね…。そして、こんな事ができるんですね…。
 ショートカットで画面表示の切替ができるので、すごく便利になりました。
 今回もお世話になりました。ありがとうございます。
 (のの2)

 うまく行きましたか。良かったです。
 実は最初は「10分」と書いていたのですが・・・。(笑)
 ちゃんと5分以内で出来ましたか?

 あとは、完成したコードを見て 必要なさそうなものが記録されていたら
 それを削除しておくのがよいと思います。
(上手に記録が取れていれば、必要なものしか記録されていないと思いますが。)
 今回の場合、1行のコードで済むと思います。

 再々行う手順は、どんどん記録にとってしまいましょう。
 (たとえば、アクティブ行をコピーして挿入する とかね。)

 (HANA)


 (HANA)さん

 お返事遅くなりました。
 5分以内で出来たかは微妙ですが(笑)、思ったよりも短時間で出来ました。 

 >今回の場合、1行のコードで済むと思います。
 との事ですが、表示してみたらこんな風になっています。

  Sub R全表示()
 '
 ' R全表示 Macro
 ' マクロ記録日 : 2008/1/18  ユーザー名 : ***
 '
 ' Keyboard Shortcut: Ctrl+Shift+R
 '
     Selection.AutoFilter Field:=18
 End Sub
 Sub R内表示()
 '
 ' R内表示 Macro
 ' マクロ記録日 : 2008/1/18  ユーザー名 : ***
 '
 ' Keyboard Shortcut: Ctrl+Shift+U
 '
     Selection.AutoFilter Field:=18, Criteria1:="内"
 End Sub

 1行では…ないような?あと…なぜか、CTLRの次にUやRを入力すると、
 勝手にSHIFTも追加されていました。
 とにもかくにも、便利度は数段アップしました。
 ありがとうございました(≧ω≦)
 (のの2)

 「'」で始まっている所は 備考 みたいな物で
 コードは、Selection.・・・と続く一行の部分です。
 (試してないのがばればれだ・・・。汗)

 黒字で表示されているのは、一行だけですよね?
 例えば、記録中に他のセルを選択してしまったり
 シートをスクロールしてしまったりすると それも記録されて仕舞います。
 その様な物が有れば、消しておくのがよいですが
 今回は無い様なので、このままで良いと思います。

 指定するアルファベットを大文字で入力すると
 勝手にShiftが入るみたいですね。
 Ctrl + U は、アンダーラインを引くショートカットですから
 手間でなければ、+Shift+ を入れておくのが安全かと思います。

 一応、「アクティブセルの有る行を挿入」する場合は
 ●記録開始
  1.相対参照に変更
  2.アクティブセルのある行を選択
  3.コピー
  4.挿入貼り付け
  5.一つ下の行(セル)を選択
  (6.Esc
   7.絶対参照に変更)
 ■記録終了

 相対参照と絶対参照の切換は、記録終了ボタンの隣に有るボタンで行います。
 押されている時に、相対参照。押されていない時は 絶対参照で記録されます。
 このボタンは、一度押すと次に押されるまで状態は変わりません。
 「7.絶対参照に変更」は、コードとしては必要のない手順ですが
 相対参照に変更したら、絶対参照に戻すクセをつけておくのが良いかもしれません。

 (HANA)

コメント:

[ 一覧(最新更新順) |

]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.