- ベストアンサー
エクセルで・・・
エクセルでB2~E10で表を作ったとします。 (そのうちC列には元々文字が入っています。) その表を B2→D2→E2→B3→D3→…→E10 と文字を入力した後自動に各セルを選択する方法がありますでしょか? おそらくマクロを使えばできたと思うのですが忘れてしまいました。 もしわかる方がいれば教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
1.B列、D列、E列でセルの書式設定>保護のタブ>ロックのチェックを外す 2.ツール>シートの保護>許可する操作で「ロックされたセル範囲の選択」のチェックを外す 3.ツール>オプション>編集タブで「入力後にセルを移動する」にチェックを入れ、移動方向を「右」にする Excel2003だとこれで出来ますが…
その他の回答 (4)
余計なお世話ですが、 他の方も言われているように、VBAでなくてもできることです。 ちょっとやり方がわからないと、何でもVBAに走るのは、あまりお勧めしません。 前に、他の方がVBAで作った機能をそれとは知らず使っていて、通常の機能と勘違いされており、 「○○する機能ができない。どのように操作すればできるのか。」という質問をされていました。 老婆心ながら...
お礼
ありがとうございます。 確かに他の問題もでてきますね… 今回は知り合い(初心者)に頼まれてできるだけ簡単に扱えるようにと思っていましたが余計ややこしくなる可能性もあえりますね… いろいろなパターンでやってみて一番良い方法で作成したいと思います。
- imogasi
- ベストアンサー率27% (4737/17069)
VBAで、例えばSheet1の、Changeイベントに Private Sub Worksheet_Change(ByVal Target As Range) Application.MoveAfterReturnDirection = xlToRight Select Case Target.Column Case 2 'B列 Target.Offset(0, 2).Select Case 5 'E Target.Offset(1, -3).Select End Select End Sub をコピペ シードでENTERかTABで異動すると B2->D2->E2->B3・・に動いてていきます。 >Application.MoveAfterReturnDirection = xlToRight (カーソル右移動)は以後効いたままになるので、マクロまたは手動で好みの方向に設定しなおすこと。 これだけ簡潔になった(Case文の利用、Offsetの利用を思いついた)のは、やはり小生の経験によるものと思う。
お礼
ありがとうございます。 VBAはほんとにかじった程度だったのですごく助かります。 一度作成してみたいと思います。
- maron--5
- ベストアンサー率36% (321/877)
【任意のセルへの移動】 ■手順■ 1)Ctrlを押しながら、マウスで入力順の2番目からセルを1つずつ指定していきます 2)最後に、入力順1番目のセルを指定します 3)指定した、セルが反転し最後に指定したセルは白になります 4)この状態で、指定した範囲に「◆入力順」と名前をつけます(名前は、なんでもいいです!) 5)左上の「名前ボックス」から、「◆入力順」を選択すると、先程のセルが指定状態になります 6)Enter をおすと、セルが指定順に移動します 7)なお、名前を定義するときに、参照範囲の式の、$ を消すと、「◆入力順」を選択した時のセルが起点になります!
お礼
ありがとうございます。 前の方のところにも書いたとおり知り合い(初心者)が操作するため一から教えていると時間が足りないためできるだけ簡単にとおもいました。 また慣れてきたところでこの方法も教えたいと思います。
- higekuman
- ベストアンサー率19% (195/979)
入力後に右へ移動したいときはタブキー、入力後に下へ移動したいときはエンターキーを押すようにすると、C列をスキップするのは大した手間でもないですよ。
お礼
ありがとうございます。 すみません言葉が足りませんでした。 そのやり方で私もしていますが今回知り合いのパソコンでそういう風にしてほしいとの事でしたのでできるだけ簡単にと思いました。
お礼
ありがとうございます。 私のパソコンではできました。 しかし私のパソコンではなく知り合いのパソコンですので(おそらく98だったかな)また一度試してみたいと思います。