dポイントプレゼントキャンペーン実施中!

 エクセルでデータ入力画面を作成中です。一部マクロを使用しています。
 データ入力画面は項目表示セルの右となりにデータ入力セルを配置し、このペアを縦に10数行並べています。一部の入力セルは複数セルを横に結合しています。シートを保護を設定、入力セルのロックのチェックを外しています。マクロで一番上のセルにアクティブセルが移動するようにしています。シートを起動すると、最初の入力セルがアクティブとなり、入力を開始できます。
 ここからが質問点です。最初のセルにデータを入力し、エンターを入力した瞬間、アクティブセルは直ぐ下のセルに移動するのではなく、数行下の入力セルに移動してしまうことが発生しています。正常に直ぐ下の入力セルに移動することもあり、規則性がありません。
 試行錯誤の結果、入力セルを結合しないよう設定したところ、この現象がでなくなりました。セル結合を設定しても、アクティブセルを正常に動作させる方法はありませんか。教えてください。

A 回答 (2件)

ご利用のエクセルのバージョンがご相談に書かれていませんので、具体的に何を選んでどこをクリックと手順をお話ししませんが。


ご相談に書かれた状況のご説明からだけ判断すれば、エクセルのオプションでEnterキーを押した時にセルを移動する方向を「下」から「右」に変更する事で正常に動作します。
    • good
    • 0

入力セルがどのように結合されているかわかりませんが、添付図のような状態で、シートの保護をするとき「ロックされたセル範囲の選択」をオフにしてあれば、項目1のセルに入力して、Enterキーを押せば項目5の入力セルに飛ぶはずです。



結合していなければ、左のセルを上から下に動く場合、特に問題なく見えるはずです。


回避するには、保護をするときに「ロックされたセル範囲の選択」をオンにするか、これをオフのままにする場合はセルを移動するときにTABキーや左右の矢印キーを使う必要があるでしょう。

既にオンになっていれば読み飛ばしてください。
「エクセルのシートの保護とセル結合について」の回答画像1

この回答への補足

 迅速なご回答、ありがとうございます。
 ご回答に載せていただいたサンプルシートを作成してテストしてみました。シートの保護で「ロックされたセル範囲の選択」はオン、ツール⇒オプションで「エンター入力後のセル移動」には「右」を設定しています。マクロで当該シートをActivateし、Range("B5").Activateして起動しますと、アクティブセルがB5となり、何か入力するとアクティブセルがB6に移ります。ここまでは正常動作ですが、2回目の起動でB5に入力しエンターを押すとアクティブセルはB7に移動します。これは期待どおりに動作していません。続いて3回目は正常、4回目は異常と繰り返します。規則性があります。ただ、最初のアクティブセルをB3とすると異常は発生しないようです。
 実際に作成しているシートはもう少し複雑でアクティブセルの移動は規則性が見付からないほどランダムにジャンプします。この問題は根が深そうなので実際のシートはセル結合をしない方向で開発を進めようと思っています。
 なお、このようなアクティブセルの異常な動きは、エクセル2003(OSはXP)、同2007(Vista)、同2010(7)いずれも発生しています。

補足日時:2014/06/05 12:11
    • good
    • 2

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!