- 締切済み
エクセル
エクセルの関数の質問です。お願いします。 ある指定したセルに数字を入力すると指定した場所にカーソールが移動する関数をご存じな方教えてください。 たとえばAの列に1~10000までの数字を入力したとします。で、D1のセルに100と入力したらA100にカーソールが移動する様な関数なんですが・・・ 大量のデータを処理するのに困り果ててます。 ご存知の方、是非お願いいたします。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- jo-zen
- ベストアンサー率42% (848/1995)
ANo.3のjo-zenです。 マクロの知識がないかもしれないので少し補足します。 まず、「ツール」→「マクロ」→「新しいマクロの記録」をクリック。 A10セルをクリック。 「ツール」→「マクロ」→「記録終了」をクリック。 この状態で、「ツール」→「マクロ」→「マクロ」をクリックすると、 左側の大きな四角のなかに、「Macro1」があり選択されていると思うので、右側にある「編集」をクリックしてください。 そうすると、画面が変わり、以下のようなコードが記録されていると思います。 Sub Macro1() ' ←先頭に「’」がついている行は注釈行で ’ プログラムには直接影響しません Range("A10").Select End Sub その画面で、Range("A10").Select の部分を以下のように書き変えてあげればいいのです。 a = Range("D1").Value Range("A1").Offset(a - 1).Select 上の式の1行目はD1セルの値を取得して変数aに代入する式です。 2行目はA1セルからa-1番目下にずれたセルを選択する式です。 あとは、右上の×マークをクリックして画面を閉じてあげれば、マクロ記述完了です。
- ookami1969
- ベストアンサー率14% (137/953)
自分も そんなに Excel を使いこなしているわけでもないのですが 考えても思い付きません。 そもそも Excel にも限界はあるでしょうから 他のデータベースにした方が良いのでは?と思います。 Access とかは入ってないんですか?
- jo-zen
- ベストアンサー率42% (848/1995)
通常のワークシート関数では無理です。 どうしてもやりたければVBAでマクロ処理すればできなくはないと思いますが。 マクロのコードとしては以下のようになります。 Sub Macro1() a = Range("D1").Value Range("A1").Offset(a - 1).Select End Sub マクロを記録したら、あとは表示→ツールバー→フォーム→左右2列ある中の右の上から2番目の□を選んで、このマクロを登録してあげれば、シート上にマクロの実行ボタンができます。
関数にそう言う機能はありません。関数はあくまでも関数(計算や情報を表示する)です。 なので、数式欄(シートの上部)の左側に今居るセル番号が表示されていませんか?そこに「A100」と入力しエンターを押すとジャンプします。 これじゃだめでしょうか?
お礼
そうですか・・・やはり関数ではありませんか。 でもジャンプ機能役に立ちそうです。 早い回答ありがとうございました!
お礼
ありがとうございます。 さっそくやってみます