- ベストアンサー
数値入力で簡単に該当のセルへ移動できませんか?
エクセル2007(2010)です。 行が名前(約50名)、列が1~12月となっています。 「3月、山田、500万」という伝票があります。 伝票はランダムに出てきますので、毎回名前を探して、該当のセルに数値を入力します。 そんなに量が多くないので、毎回スクロールして探していますが、 簡単に該当のセルに飛ぶ方法はないものでしょうか? それが出来たら他の表にも応用したいと思っています。 宜しくお願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 私ならば,入力用のフォームをVBAで作るでしょう。フォームの名前のリストと月のリストを選択して数値を入力すれば,しかるべきセルに値が入るようなプログラムです。 これ位ならば,簡単でしょう(私には・・・)。ちょっとExcel VBAを勉強すれば出来ますよ。それができれば応用が利きます。
その他の回答 (5)
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
皆さんがおっしゃっている「ジャンプ」もいいですね。ショートカットキーなら「Ctrl+G」あるいは「F5」キーです。もちろんマクロというのもありますね。私からは、他に、5通りの方法を紹介します。 (1)リンクを設置し、それをクリックして移動 例えばA1セルあたりで右クリックし、「ハイパーリンク」をクリック。出てきたダイアログで「リンク先」として「このドキュメント内」を選択。「表示文字列」に適当な文字列、例えば「表1」とかを入力。「セル参照を入力してください」とのボックスに例えば「a100:c120」を入力し、「OK」ボタンをクリック。さあ、できたリンクをクリックしてみましょう。 一度リンク設置してあげれば、Excelを全く知らない人でもジャンプできちゃうというのは、メリットかもしれませんね。 (2)名前ボックスにセル範囲を入力 数式バーの左のほうに、カーソルが置かれているセルの番地を表示しているボックスがありますね?それが「名前ボックス」です。そこに「a3000」とか「z3:aa5」とか入力し、Enterキーを押してみてください。 (3)移動先の近所のセルにあらかじめ目印を入力しておき、「Ctrl+↓」などで飛ぶ 例えば目印として「★」とか好きなマークを、A列に入力することに決めます。A20、A40、A60に★を入力。次にカーソルをA1とかA2あたりのセルに置き、キーボードで「Ctrl+↓」を押してみてください。もちろん「↓」だけでなく、「↑」、「←」、「→」も使えますよ。 「Ctrl+Shift+↓」のようにShiftも同時に押せば、長距離のセル範囲の選択もできます。 (4)「Ctrl+Home」、「Ctrl+End」 シートのデータが入力されている範囲(長方形)の中で、最も左上や右下にあるセルに飛びます。リボンの表示の「ウィンドウ枠の固定」を設定しているときは「Ctrl+Home」による動きがちょっと変わるので、お試しあれ。 なお青字の「Fn」キーがあって、HomeやEndも青字になってるようなキーボードでは、FnとHomeを同時に押すと初めてHomeが作動します。つまり、「Ctrl+Fn+Home」のように押すことになるので、注意。 (5)表のタイトルなどを検索 例えば「表3 タンパク質合成の収率」というタイトルが記入されている表にジャンプしたければ、「表3」とか「タンパク質」といったキーワードで検索すれば、そこにジャンプできます。ショートカットキーは「Ctrl+F」です。
お礼
セル移動にもいろいろ方法があるのですね。 今後の参考にしたいです。 回答ありがとうございました。
- keithin
- ベストアンサー率66% (5278/7941)
>伝票はランダムに出てきますので 「出てくる」っていったいどういう状況なんでしょうか。 紙の伝票が送られてくるのを目で見て数字を記入しているんでしょうか。 今作業中の「まとめ」ブックにテンプレートで「伝票」を次々追加出来るように既にしっかりと仕込んであって,そこから「まとめ」にさらに数字を転記しているとか。 他の人が作成してアナタにメールとかで届く「伝票」エクセルから,あなた管理のまとめブックに数字をコピーしているとかでしょうか。 総じて言うとあなたが言ってる「伝票」そのものは,あなたが手出しや手入れ(作り直したりとか)出来るモノなのかどうかってことです。 ●「伝票」には一切手を入れられない。「まとめシート」の方でどうにかするしかない。なら。 出来る事はほとんどありません。 Ctrl+Fで検索のダイアログを出し,「山田」を検索してジャンプするのが,一番手堅い方法です。 次善の策としては「まとめシート」に「オートフィルタ」を取り付けておき,▼をプルダウンして「山田」を選び,データを記入します。 ○そもそも伝票がエクセルで作成されてるという前提で。多少なら「伝票」を変更できるなら。 シート名「まとめ」のA列のどこかに「山田」が記入されているとする 伝票シートのA1セルに「山田」が記入されているとする 伝票シートのB1セルに =IF(A1="","",HYPERLINK("#まとめ!A"&MATCH(A1,まとめ!A:A,0),"表示")) と記入,クリックするとまとめシートの山田セルにジャンプします。 そのように仕込んだ伝票のひな形シート(テンプレート)を作成して,どんどんブックに追加して使う,という使い方を前提にしていると言うことです。 あるいは「テンプレート」が判りませんか? 空の伝票を1枚作成,名前をつけて保存でファイルの種類を「テンプレート形式」にして保存しておくことです。
お礼
伝票は手書きです。 関数のほう、やってみました。 名前行には飛べました。工夫したらいけるかもです。 回答ありがとうございました。
- MackyNo1
- ベストアンサー率53% (1521/2850)
実際のシートのレイアウトにより合理的な操作が異なりますが、例えば検索する名前がどこかのセルに書いてあって、そのセルをダブルクリックすれば、一覧からその値が記載されているセルを選択したいなら以下のようなイベントマクロを実行します。 対象のシートのシート名部分を右クリックして「コードの表示」で以下のコードをコピー貼り付けして、そのシートの検索対象が記載されているセルをダブルクリックしてみてください。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cells.Find(What:=Target.Text, After:=ActiveCell, SearchDirection:=xlNext).Activate End Sub
お礼
やってみました。 目的の行に飛ぶことは出来ました。 これ以上の工夫はマクロの勉強が必要なようです。 これを機会に勉強を始めようと思いました。 回答ありがとうございました。
- Y-JHT
- ベストアンサー率43% (7/16)
求められている処理とはちょっと違うのですが、元のExcelデータには変更を加えずに楽に入力する場所を表示させるために「フィルタ」を使ってみてはどうでしょうか? 「データ」メニューの「並べ替えとフィルタ」が目的のものです。 内容としては名前で表示を絞り込むのです。 全体で50名として、山田さんが1人しかいないときは「山田」で絞り込むとその人しか表示されません。 また細かく絞り込む条件も指定できます。 仮に「下山」「山根」「山田」「山城」「郡山」という方がいた場合、「山」で絞り込むと5人とも表示されますが、「山」「で始まる」という条件にすれば「山根」「山田」「山城」が表示されることとなります。 http://www.excel-img.com/database02.html を参考にすれば使い方もわかると思います。
お礼
やってみました。 出来ましたが、クリック操作が増えるので。。。。 今までフィルタをあまり使ったことないので、勉強になりました。 これから他で使っていきたいです。 回答ありがとうございました。
- pasocom
- ベストアンサー率41% (3584/8637)
表の行ナンバーを伝票の頭に振ってもらうようにしたらどうでしょう。 例えば山田さんが20行目であれば、伝票には「3月、20山田、・・・」と言う風に。 そうすれば、この例なら目的のセルは「D20」であることがすぐに分かります。 (A列は名前、以下B列=1月、C列=2月、D列=3月・・・だとして。) あとはジャンプ機能(ツールバーから「編集>ジャンプ>参照先=D20>OK )で目的のセルに飛びます。 たかだか50行ならスクロールした方が速そうだけど。
お礼
名前には既に5ケタのナンバーがあるので、混乱の元になるので付けたくないです。 でもこれが一番単純でやりやすい方法だと思いました。 回答ありがとうございました。
お礼
イメージ的にはわかります。 >ちょっとExcel VBAを勉強すれば出来ますよ。 本当ですか?簡単ですか? 関数で出来ることは工夫したので、次はマクロの勉強をはじめたいと思います。 回答ありがとうございました。