![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.7ベストアンサー
- 回答日時:
こんにちは!
他の方々が仰っているようにVBAになってしまいますね!
一例です。
↓の画像のような配置だとします。
(1行・1列ずれてもめちゃくちゃな反応になりますので、表のレイアウトは画像通りとします
画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストしてB1~B4(B4セルは任意)に入力しマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)
Sub Sample1() 'この行から
With Range("B1:B4")
.Copy
Cells(Rows.Count, "A").End(xlUp).Offset(1).Select
Selection.PasteSpecial Paste:=xlPasteAll, Transpose:=True
.ClearContents
Range("B1").Select
End With
End Sub 'この行まで
※ Sheet上にコマンドボタンを挿入し、
クリックしてマクロを実行する方法もあります。m(_ _)m
![「入力した値を下の列に並べる方法」の回答画像7](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/a/667667_5497f2d2a45e0/M.jpg)
皆様
自分のイメージ通りです。
この画像のままデータで使用したいくらいです。
今使っているのはMac版なので
会社のWindows版でマクロ実行してみます。
ありがとうございます。
No.6
- 回答日時:
おやりになりたいことと違っていたら申し訳ありませんが、以下お試しください。
【1】A1セルに「日付」、A2セル「金額」、A3セル「項目」、A4セル「備考」と入れる。
【2】A1:A4 を選択し、Ctrl+C (=コピー)
【3】A5セルを選択し、Alt+E、S、Alt+E (=形式を選択して貼付。行列を入れ替える)
【4】Alt+F11 (マクロの画面が開きます)
【5】Alt+I、M (真っ白の画面が開きます)
【6】以下をコピーし、この真っ白画面に張り付ける。
Sub aaa()
Dim r As Integer, Lstrow As Integer
Lstrow = Cells(Rows.Count, 1).End(xlUp).Row + 1
Range("B1:B4").Copy
Cells(Lstrow, 1).PasteSpecial Transpose:=True
Range("B1:B4").ClearContents
Range("B1").Select
End Sub
【7】エクセルの画面に戻り、「挿入」タブから「図形▼」を押す。
【8】何でもいいですが、たとえば、「角丸四角形」を押す。
【9】どこでもいいですが、たとえば、G2セルあたりからI4セルあたりまでドラッグして四角形を置く。
【10】この四角形を選択している状態から右クリック。「マクロの登録」を押す。
【11】「aaa」を選択し「OK」
【12】 B1セルから順にデータを入力してみる。
たとえば、「10/15、3000、食費、スーパー」 と入れてみる。入力が終わったら、いま【9】で配置したボタンを押す。
【13】6行目に転記されました。そして前の入力データはクリアされ、セルがB1に戻りました。
【14】次のデータを入れてみる。たとえば、「10/15、1500、交通費、バス」と入れてみる。
入力が終わったら、同じくボタンを押す。
【15】すると、7行目に転記されました。
以降同じです。
【16】名前を付けて保存。その場合のファイルの種類は「Excelマクロ有効ブック」を選んでください。
※ボタンの色とか、ボタンに書く文字だとかは、ボタンを右クリックしてお好みでいじっていただければと思います。
※おそらくデータが増えてくると、冒頭のA1~A4が見えなくなっていくので、A6セルを選択したうえで、Alt+W,F,F (ウィンドウ枠固定)をしておいたほうがよいと思います。(解除するにはもう一度同じことを)
※大きなお世話かもしれませんが、B3セル(項目)は、ある程度同じパターンもあるでしょうから、あらかじめ選択肢をセットしておくと楽ちんです。
【1】B3セルを選択。Alt+D,L (入力規則)
【2】「入力値の種類」 は 「リスト」 を選択。
【3】一番下の「元の値」に選択肢を書きます。それぞれ、カンマ(英数半角)で区切って書きます。
たとえば、
食費,光熱費,雑費,通信費
と書いてみます。(適宜あなたの項目に合わせてください)
【4】 「エラーメッセージ」のタブを選び、「無効なデータが~」のチェックは外しておいてもいいでしょう。それでOK。
そうしますと、入力の際にこのセルに来ますと、セルの右側に▼が出ますから、Alt + ↓ でドロップダウンリストが出ます。そこから選べば楽でしょう。
ここにない選択肢を書く必要ができた場合は手書き入力も可能です。
もしご意向と異なっていたらすみません。
この回答への補足
度々すみません・・・
H13 日付
H14 金額
H15 項目
H16 備考
となっています。
35行目というより
H13(日付)を入力しないと下の行に追加されません。
H14(金額)を入力したら下の行に追加していくにはどのようにすればいいでしょうか?
お礼が遅くなりまして大変申し訳ありません。
配置の関係で入力をH13:H16にしました。
そして下記のように書き換えました。
一つ問題がありまして・・・
マクロを実行し下の行に入力されていくようになりました。
しかし35行目までしか入力されず、35行目は上書きされるだけです。
36行目以降もデータを入力するにはどうすればいいですか?
お手すきの際ご教授頂ければ幸いです。
何卒宜しくお願い致します。
Sub aaa()
Dim r As Integer, Lstrow As Integer
Lstrow = Cells(Rows.Count, 1).End(xlUp).Row + 1
Range("h13:h16").Copy
Cells(Lstrow, 1).PasteSpecial Transpose:=True
Range("h13:h16").ClearContents
Range("h13").Select
End Sub
No.5
- 回答日時:
A1からA4を入力枠にしたいという事でしょうか?
それでしたら、表自体は1行目に見出しを作りそのままデータを蓄積していき入力時にはフォーム機能を使われてはどうでしょうか?
クイックアクセスツールバーの右端の↓(ユーザー設定)→その他のコマンド→コマンドの選択から「すべてのコマンド」を選ぶ
→フォームコマンドをクイックアクセスツールバーに追加させる
表の見出しのセルを一つ選び、クイックアクセスツールバーのコマンドボタンを押すとデータが入力できる画面が開きます。
そこに入力していくとB1から下にデータが入っていきます。
No.4
- 回答日時:
>例えばA5以降の範囲に「入力されているセルの下段にA1~A4の数値を入力する」
>このようなことは可能なんでしょうか?
A1からA4入力したデータをA5からD5のセルへ自動的に表示させることは可能ですが、入力する度に表示する行を変更することは計算式ではできません。
私はVBAを学習していませんので分かりませんがVBAを使えば処理可能と思います。
各セルに関数式(計算式)を設定するのはそのセルにどんな値を格納するかを指定することなので、「A1セルに入力された値をA5セルにコピーしなさい」と言う命令は設定できません。
従って、VBAのようなプログラム言語を使って目的の作業をさせることになります。
VBAを使っても少々面倒な論理を考えないと処理できないと思います。
No.3
- 回答日時:
>例えばA5以降の範囲に「入力されているセルの下段にA1~A4の数値を入力する」
>このようなことは可能なんでしょうか?
お考えのことをそのまま実行するには、マクロが必要です。
A1~A4に入力した後、表の最後の行まで飛んで、行と列とを入れ替えてコピーするというマクロで
入力後にボタンを押す等の操作が必要になります。
そのような形式でなくてもよければ、フォームを利用することによりカード型DBのような入力が可能となります。
クイックアクセスツールバーでその他のコマンド→リボンにないコマンド→フォーム を選択すればOKです
一番簡単なのは、もちろん表の下に直接入力すること
TABを使えば、A5,B5,C5,E5と入力でき、リーターンでA6に移動します。
No.2
- 回答日時:
ご希望の操作は関数では対応できませんので、マクロを利用することになります。
ご自分でコードが書けない場合でも、「マクロの記録」で「相対参照で記録」の機能を利用すれば、最下行の下の行にデータを追加することが可能です。
たとえば、実際のレイアウトがA1:A4に項目名、B1B4にデータが入力されており、A5:D5セルに項目名が入力されているなら以下のような操作をすることになります。
開発タブの「マクロの記録」で適当なマクロ名をつけ、B1:B4セルを選択してCtrl+Cでコピーし、A1セルを選択して、Ctrl+↓のキーで(この操作だけはキーボード操作をしてください)一番下のデータ入力行を選択して、開発タブの「相対参照で記録」をクリックして、↓キーを1回押して、入力行を選択し、そのまま右クリックから「形式を選択して貼り付け」で「行列を入れ替える」を選択して「OK」して「記録終了」ボタンをクリックしてください。
このマクロをデータ入力後に実行すれば(実戦的にはシートにコマンドボタンを作成して、このボタンにマクロを登録する)、ご希望のデータベースを簡単に作成することができます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Excel(エクセル) 列を自動で追加したい 3 2022/07/11 12:58
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- 高校 日商簿記3級の勉強中なのですが 精算表が完成せず困っています。 こちらの問題の回答を教えていただきた 2 2023/03/02 09:07
- Excel(エクセル) バイナリー演算を勉強したい 1 2023/04/19 14:17
- 建設業・製造業 見積作成(エクセル)について教えて下さい。 2 2023/05/10 13:47
- その他(お金・保険・資産運用) 予算書 1 2023/04/16 12:52
- Excel(エクセル) エクセルで最初に値が入っているセルを見つける方法はありますか? 2 2023/07/18 14:58
- Excel(エクセル) Excel タスク管理のツールのアドバイスをお願いいたします 1 2022/08/07 16:50
- Excel(エクセル) 並べ替え、ソートの構文がわからない。 お世話になります。VBA超初心者です。 エクセルでワークシート 2 2023/06/28 21:00
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
名簿の漢字名を関数で半角カナ...
-
EXCEL 連動したドロップダウン...
-
オートフィルを列すべて(一番...
-
EXCELのNOW()関数の...
-
Excelのテーブル上のセルの保護...
-
EXCELで縦の行全てに一括して文...
-
エクセルでエンターを押すと隣...
-
エクセルで行の一番上にセルに...
-
【エクセル】入力規則のプルダ...
-
一つのセル内でVLOOKUPで抽出し...
-
文字列を含む連続データの入力
-
Excelにて。 1つのセルの中で同...
-
空白部分に連番の数字を記入し...
-
エクセル・真ん中の数字のみイ...
-
エクセルで休日の「休」という...
-
エクセルで、複数の同一内容の...
-
エクセルのオートフィル機能で...
-
Excelで数値をgからkgへ(÷1000)
-
Excelで相対度数を求めたいので...
-
Excelでセルを次の行の先頭の列...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelのテーブル上のセルの保護...
-
EXCEL 連動したドロップダウン...
-
名簿の漢字名を関数で半角カナ...
-
エクセルでエンターを押すと隣...
-
【エクセル】入力規則のプルダ...
-
Excelで50個のセルに同じ文字を...
-
エクセルで行の一番上にセルに...
-
EXCELで縦の行全てに一括して文...
-
エクセルで決められた合計にな...
-
エクセルで休日の「休」という...
-
エクセルで空白に自動で文字を...
-
Excelでセルを次の行の先頭の列...
-
オートフィルを列すべて(一番...
-
空白部分に連番の数字を記入し...
-
エクセルのオートフィル機能で...
-
エクセルで既存数値を税抜きに...
-
EXCELのNOW()関数の...
-
指定した行に飛ぶ事って可能で...
-
A1 B1 A2 B2 A3 B3 の順に入力...
-
Excelで数値をgからkgへ(÷1000)
おすすめ情報