• ベストアンサー

エクセル ボタンを押したら別シートへ同じものを入力

Excelで表を作りました。 その表には、(1)名前(2)生年月日(3)住所(4)備考 という欄を作成してあります。 一行で一人分の入力になっています。 そこで、一人分の横一行の入力がなされ、その行に対する何かしらの決定ボタンを押したら シート2にの指定する箇所 (1)はセルA1 (2)はB1セル (3)はセルC1 (4)はセルD1 に同じものを入力させたいのですが、どうしたらよいでしょうか? マクロでも普通の入力する関数でもいいので どのようにすればいいかわかる方がいましたら教えてください! 本当に困っていてどうすればいいかわからいません。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

'簡単には、こんな感じ Public Sub dataCopy() Dim r, s As Worksheet r = ActiveCell.Row '今何行目にカーソルがあるか Set s = Sheets("Sheet1") s.Range(s.Cells(r, 1), s.Cells(r, 4)).Copy Sheets("Sheet2").Range("A1:D1") End Sub マクロをボタンに割り当てて コピーしたいデータのある行にカーソルを置いてある状態で、実行するとシート2のA1:D1にコピーされます データ部分はA列からD列にあることになってますが、 B列から始まるような場合 Range(s.Cells(r, 1), s.Cells(r, 4)) を Range(s.Cells(r, 2), s.Cells(r, 5)) に変更して下さい

asdasdd
質問者

お礼

本当にありがとうございました。 とても助かりました。助けていただきありがとうございます。

関連するQ&A

  • Excelで入力が反映されるものを作りたい

    助けてください。 作りたいプログラムは、まずエクセルで入力画面を作ります。 (1)名前(2)生年月日(3)住所(4)備考 の入力画面がほしいです。マクロかなんかでできるでしょうか? マクロでなくてもだれでも簡単に入力できればいいのですが・・・ その後、これらの入力がされて決定ボタンを押すと、 別シートに作成した表の中にこれらを順に表示していきたいのです。 (1)名前で入力された項目はシート2のA1セル (2)生年月日で入力された項目はシート2のB1セル (3)住所    〃   項目はシート2のC1セル (4)備考    〃   項目はシート2のD1セル に入力されるようにしたいのです。 その他、最初の入力画面に 『 』行目 という項目を作って、そこに『2』と打てばそれぞれシート2の2行目に同じことを出力したいのですがどうすればいいのでしょうか? 手順等、作り方まで教えていただけると本当に嬉しいです。 どなたか知っている方がいましたら助けてください。 お願いします。

  • エクセルの西暦年月日入力

    ものすごく基本的な質問です。 エクセルの表の年月日欄に、西暦で入力したいのに、手元には昭和・平成の元号の資料しかない時、元号のまま入力しても、セルにはちゃんと西暦が表示されたことがありました。 これでいいんだと思い、次の行に移ったところ、今度は平成のまま表示されてしまい、困ってしまいました。 多分、関数の使い方がわかっていないおバカな自分のせいだな、とは思うのですが、どなたか教えて下さい。

  • エクセルでの入力作業

    エクセルの表で、複数行、複数列のデータ入力を行う場合、 列違いや行違いのミス入力を防ぐため、入力するセルを基準に列や行を確認できるようなことがしたいのですが。 要するに、表をものさしを当てて欄を確認しながらデータ入力できるようなことがしたいのです。 関数の組み合わせや、条件書式等でそのようなことはできないでしょうか?

  • <エクセル>マクロを使ってデータを入力したいのですが・・

    エクセル初心者のため、 どなたかご存知の方がいらっしゃいましたら教えていただけないでしょうか。 エクセルで、ある申込書のフォームにデータ(氏名・フリガナ・生年月日・年齢等を入力したいのですが100名分くらいあるためマクロを作って元データからコピーできれば・・と考えています。 100人分の元データはSheet1にあり、 1名につき1行で、A1に氏名、B1にフリガナ、C1に生年月日・・・(~F1まで)となっています。(~100行目まで) そのデータをSheet2にある申込書フォームの該当欄にコピーしたいのですが、簡単な方法はありますでしょうか。 Sheet2には10名分の入力欄があるので、、 Sheet1の1行目の人のA1(氏名)のデータをSheet2のB12(氏名入力欄)へ、 Sheet1の2行目の人のA2(氏名)のデータをSheet2のB14(氏名入力欄)へ、 ・・・・・ Sheet1の10行目の人のA10(氏名)のデータをSheet2のB30(氏名入力欄)へ、 という感じでコピーしていきたいです。 (フリガナ、生年月日、年齢などそれぞれ欄があります) とりあえず10人分ずつSheet2にコピーできるマクロが組めれば大変助かるのすが・・・。 説明も上手にできず申し訳ないのですが・・・。 私の知識レベルでは100人分こぴぺこぴぺする方が早いのかもしれませんが どなたかアドバイスをいただければ大変うれしいです。 どうか、宜しくお願いいたします。

  • エクセル 関数 別シートへの抽出

    エクセル関数について質問します。 「数値の入ったセルだけを、その行ごと丸々別シートに抽出する方法」 について教えてください。 例、C列に空白セルと1、2や3など、数値の入ったセルがあります。空白セル以外の数値の入ったセルを、その行ごと別シートに抽出したい。 C3とC5に数値が入ってる→3行目と5行目を別シートに抽出する。 このようなことは関数でできるのでしょうか? マクロでないと無理でしょうか? お力をお貸しください。 よろしくお願いします。

  • 複数のエクセルシートからの検索

    社員住所録が会社ごとに別シートに作成されている状態で、任意の会社(シート)の任意の氏名とか電話番号をキーにして個人情報(一行分)を検索(取り出し)する場合の関数の使い方を教えて下さい。 住所録の項目は左から下記の順で各セルに入っています。 『社員番号・氏名・〒・住所・電話番号・生年月日』 以上、宜しくお願いします。

  • エクセル 別シートから一覧を抽出したい

    部品一覧表を作成しているのですが、2シートあり 1入力シート・2部品コードシートとあります。 部品コードシートにはB列に部品番号・C列部品名・D列部品番号・E列部品名と2行ずつ使い番号・品名がB~Wまで47行分入力されています。 B1:C47、D1:E47…と2列47行にはそれぞれ【A】、【B】、…とセルの名前の定義をつけました。現在【H】までありますが、今後増える可能性があります。 入力シートに、セルの名前を指定したときに部品コードのシートから 一覧を抽出したいのですが、どの関数を使えばよいのかわかりません。 入力シート                 |部品コードシート G   H                  | A Bコード C部品名  Dコード E部品名 4式入力用にあけています。     |1 1800  ユニットA   1501 電源A 5コード 部品名             |2 1801  ユニットB   1502 電源B 6                       |3 G4に関数を入れてG6~G52まで部品コードのシートA1~A47を一気に表示 させたいのです。部品コードシートの行数が変わることはありません。 マクロを使わないと、関数では難しいでしょうか?

  • エクセル 入力フォームのデータを別シートに書き込む

    エクセル 入力フォームのデータを別シートに書き込む方法 1.シート1のA2に日付、B2に文字列、C2に金額、D2に個数、E2に合計金額を入力する。 2.内容確認後、入力ボタンを押すと、 Sheet2の集計表リンクさせ、尚且つシート2内で1か月分の集計を取ります。 つまりシート1は入力シートで、同じセルに値を入力します(次回はデータが上書きされる)が、シート2では、集計表の1列ずつ下に新しく記録され1か月分の入力がされていく。 このような入力フォーム(マクロ)を作りたいと思っています。 初めて投稿するので、質問がよく分からないかもしれませんが、 よろしくお願いします。

  • 別シートへの飛ばし方

    毎月、売上内容をエクセルで表に入力しています。 元表にはバラバラに日付を入力していますが、別のシートに月毎にまとめたいんですが、 元表に入力すれば、自動に月毎のシートに内容が反映される関数、マクロを教えて下さい。

  • エクセルデーターの並び替え

    1 住所録を作成しようと思っています。 2 番号・氏名・郵便番号などの欄横方向に設けま す。 3 一人について、   一行目には自宅住所についての情報を入力し、   二行目には会社住所についての情報を入力しま す。   要するに、一人につき2行(以上)を使います。 4 ランダムに入力した後で、「あいうえお」順に並 び替えをしたいのですが、どうしたら出来るので  しょうか、ご教授ください。 5 なお、「一人につき一行」で情報を入力する方法 なら、並び替えは出来ます。