- 締切済み
エクセルでの簡単なデータ入力について
エクセルで、A1、B1、C1に数字を入力し、そのあとD1、E1、D2、E2…と何行か数字を入力、再び先頭のA列に戻りまた作業を繰り返すという変則的な表を作っています。つまり最初は5列に入力するけれど2行目3行目…は4列5列のみ入力、またn行目は5列入力に戻るというものです。入力の仕方でより簡単な方法がないでしょうか。タブとエンターで繰り返し入力ができますが、計算式を保護したいので保護をかけるとカーソルの動きが思うようにいきません。簡単なマクロ操作でパソコンになれていない初心者でもできる簡単な入力方法はありませんか。4列目5列目の入力繰り返しの回数は、C列の数字がが10なら10行、5なら5行とつど変わります。うまく説明できたか不安ですがよろしくおねがいします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
>必ずA,B,Cとカーソルを飛ばすことになります。その手間を何らかの操作で解消できないかと 私ならEnterキーを3回押すくらい手間でもなんでもないと思いますが、これっぽっちも我慢できないなら、VBAでプログラムを組むしかないでしょう。条件分岐をするのでマクロではできません。具体的にどのようなプログラムを組むべきかを考えると、相当複雑になると思われます。例えば、あらかじめA~E列を保護なしにしておいて、C列に数値が入ったら、いったんシートの保護を解除して、その次の行からその数値分の行数のA~C列を保護し、再びシートの保護をするようなプログラムが考えられます。 質問内容ではなぜそのような入力パターンになるのか不明ですが、通常、そのような入力をするならEXCELではなくACCESSなどのリレーショナルデータベースソフトで、サブフォームやサブレポートと呼ばれるもので行うのが一般的でしょう。これは納品書や請求書のように、宛名などの一連の項目と売上商品などの明細を一枚に表示するような場合に使われます。
シートを保護するときのダイアログボックスで「ロックされたセル範囲の選択」のチェックをはずしてください。書き込み可能なセルのみをカーソルが移動します。 横移動を基本にしたいなら、「ツール」の「オプション」の「編集」タブで、「入力後にセルを移動する」の方向を「右」に設定してください。
補足
回答をいただきありがとうございました。両方試して見ましたが、 保護した場合カーソルは書き込み可能なAからE列を移動しますが、2行目以降はD、E列へのデータ入力が続くので必ずA,B,Cとカーソルを飛ばすことになります。その手間を何らかの操作で解消できないかと質問させていただきました。数行ではなくたとえば10行以上D,E列の入力が続くと結構な作業となります。最初はA,B,C入力とD,E列入力のシートを分けたのですが、シートの切り替えの繰り返しになるので不評でした。
お礼
回答ありがとうございます。エクセルでは無理なことがはっきりして、とてもすっきりしました。Enterキーを3回押すくらい、確かになんでもないかもしれませんね。プログラムは出来ないので、自分のできる範囲で作ってみようと思います。本当にありがとうございました。