エクセルのセルに入力したデーターを別のシートの名簿一覧に記録していくにはどのようなマクロを組めばよいでしょうか?
入力イメージとして、「田中 90 良」この項目は手動で入力するとします。
Sheet1
A B C D E F G
1 日付 氏名 成績 区分
2 9/19 田中 90 優
ここでマクロを実行すると別のシートに
Sheet2
A B C D E F G
1 1組 2組
2 田中 佐藤 小林 近藤 三浦 遠藤
3 9/19 90
と記録され、次に入力し、
Sheet1
A B C D E F G
1 日付 氏名 成績 区分
2 9/21 小林 80 良
さらにマクロを実行すると
Sheet2
A B C D E F G
1 1組 2組
2 田中 佐藤 小林 近藤 三浦 遠藤
3 9/19 90
4 9/21 80
このように記録され、さらに
Sheet1
A B C D E F G
1 日付 氏名 成績 区分
2 9/23 佐藤 95 優
と入力して、さらにマクロを実行すると
Sheet2
A B C D E F G
1 1組 2組
2 田中 佐藤 小林 近藤 三浦 遠藤
3 9/19 90
4 9/21 80
5 9/23 95
という具合に、氏名と日付が交差するセルにデーターを記録していきたいのですが、
可能でしょうか?
どうかお返事よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
Sheet2に氏名と日付が入力済みであると仮定します。
Sub Sample()
Dim x As Integer
Dim y As Long
x = Application.Match(Sheets("Sheet1").Range("a2"), Sheets("Sheet2").Columns(1), 0)
y = Application.Match(Sheets("Sheet1").Range("b2"), Sheets("Sheet2").Rows(2), 0)
Sheets("Sheet2").Cells(x, y) = Sheets("Sheet1").Range("c2")
End Sub
でどうでしょう。
この回答への補足
keirikaさんへ
お返事ありがとうございます。
いろいろやってみて以下のようになりましたが、うまく転記できません。
日付を先に転記するようにしました。
Sub Macro001()'日付を転記する
Range("A2").Select
Selection.Copy
Sheets("データ").Select
Range("A65536").Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveSheet.Paste
Sheets("入力表示画面").Select
Application.CutCopyMode = False
Range("C3").Select
'データを転記する
Dim y As Integer ’ここと
Dim x As Long ’ここは変更しました
x = Application.Match(Sheets("入力表示画面").Range("a2"), Sheets("データ").Columns(1), 0)
y = Application.Match(Sheets("入力表示画面").Range("b2"), Sheets("データ").Rows(2), 0)
Sheets("データ").Cells(x, y) = Sheets("入力表示画面").Range("C2")
End Sub
です。みにくかったサンプルを訂正しました。参考にしてください。
Sheet(入力表示画面)
A B C D E F G
1 日付 氏名 成績 区分
2 9/23 佐藤 95 優
と入力して、さらにマクロを実行すると
sheet(データ)
A B C D E F G
1 1組 2組
2 田中 佐藤 小林 近藤 三浦 遠藤
3 9/19 90
4 9/21 80
5 9/23 95
日付は転記されるのですが、「成績」の数値が転記されません。
また、氏名を入力する際に、リストから選択するようにしていますが、それが原因なのでしょうか?
大変お手数ですが、再度お返事よろしくお願いいたします。
No.3
- 回答日時:
まず1組と2組の中で重複する名前はないのでしょうか?
あとSheet1からSheet2へ転記する際にSheet2のA列(B列?)の日付は事前に記載されているのでしょうか?
(提示されたサンプルではそうは見えないのですが)
この回答への補足
お返事ありがとうございます。
名前が重複しないようにしております。
日付は入力されていませんので、事前に転記するマクロを記入しました。
Sub Macro001()
Range("A2").Select
Selection.Copy
Sheets("sheet2").Select
Range("A65536").Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveSheet.Paste
Sheets("Sheet1").Select
Application.CutCopyMode = False
Range("A3").Select
end sub
です。
また、みにくかったサンプルも訂正しました。参考にしてください。
※sheet1は「入力表示画面」、Sheet2は「データ」としました。
Sheet(入力表示画面)
A B C D E F G
1 日付 氏名 成績 区分
2 9/23 佐藤 95 優
と入力して、さらにマクロを実行すると
sheet(データ)
A B C D E F G
1 1組 2組
2 田中 佐藤 小林 近藤 三浦 遠藤
3 9/19 90
4 9/21 80
5 9/23 95
No.2
- 回答日時:
#1です
訂正します
Dim x As Integer
Dim y As Long
↓
Dim y As Integer
Dim x As Long
この回答への補足
先ほど転記されない件でお返事いたしましたが、「入力表示画面」のシートの日付が「=NOW()」だったのでダメだったのでした。
そして、同じ日付でしたら最下位の日付の列に入力されるのではなく、最上段の日付の列に入力されます。
入力後のイメージとしては、
Sheet(データ)
A B C D E F G
1 1組 2組
2 田中 佐藤 小林 近藤 三浦 遠藤
3 9/19 90
4 9/21 80
5 9/21 95
6 9/21 95
7 9/22 95
となって欲しいのです。
お返事よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelについて 4 2023/03/02 09:24
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- Excel(エクセル) 【マクロ】エラーが発生⇒実行時エラー58既に同名のファイルが存在 5 2022/08/31 10:03
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Excel(エクセル) 条件書式でリスト内以外の単語に色をつけたい 1 2022/09/23 13:23
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Excel(エクセル) ②Excel 簡単にシートコピーしたら前日の残高と日付を変更させたい→マクロの記録でエラーが出ます 8 2022/07/16 20:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
一つのTeratermのマクロで複数...
-
EXCELのVBAでRange("A1:C4")を...
-
Excel VBAからAccessマクロを実...
-
ExcelのVBA。public変数の値が...
-
ソース内の行末に\\
-
ピボットテーブルでの毎回可変...
-
特定文字のある行の前に空白行...
-
ExcelVBAでPDFを閉じるソース
-
マクロの連続実行
-
TERA TERMを隠す方法
-
エクセルに張り付けた写真のフ...
-
VBA初心者 Ctrl+での操作、ボタ...
-
TeraTermマクロの文字列結合
-
エクセルのマクロについて教え...
-
エクセル マクロ 指定日の指定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
メッセージボックスのOKボタ...
-
一つのTeratermのマクロで複数...
-
ExcelのVBA。public変数の値が...
-
エクセルに張り付けた写真のフ...
-
他人が作ったマクロの理解
-
ExcelVBAでPDFを閉じるソース
-
TERA TERMを隠す方法
-
エクセルで別のセルにあるふり...
-
マクロ実行時、ユーザーフォー...
-
Excel VBAからAccessマクロを実...
-
EXCELのVBAでRange("A1:C4")を...
-
TeraTermマクロの文字列結合
-
PDF出力マクロについて。マクロ...
-
#defineの定数を文字列として読...
-
エクセルのマクロをセルの値に...
-
wordを起動した際に特定のペー...
おすすめ情報