• ベストアンサー

エクセルで入力用の場所に入力したら、入力内容が人ごとに反映される方法

入力用のシートを1つ用意して、その表の中の項目を入力したら、内容が他のシートに反映される方法ってありますか? 例えば、社員Aの社員番号が001で、 社員番号を入力したら、その人のシートに 次々に情報が入力されていくっていうことはできるのでしょうか?? すごく分かりにくい質問ですみません。

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

  • ベストアンサー
  • matsu_jun
  • ベストアンサー率55% (146/265)
回答No.3

#2のmatsu_junです。 >使用しているのが、エクセル97と古いからでしょうか?? おそらくそうだと思います。手元に97が無いので確認が取れませんが、私が以前に回答した手順は参考になりませんでしょうか。下の参考URLより、#5をご覧ください。 また、先の回答ではシート名を間違えるとExcelの再立ち上げが必要になります。一応下に再立ち上げが不要なように改良しておきました。こちらをご利用ください。 Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo ERREND Application.EnableEvents = False If Target.Address <> "$A$1" And Range("A1").Value <> Empty Then Sh_Nam$ = CStr(Range("A1").Value) Worksheets(Sh_Nam).Cells(Target.Row, Target.Column).Value = Target.Value End If Application.EnableEvents = True Exit Sub ERREND: MsgBox Error(Err.Number) Application.EnableEvents = True End Sub

参考URL:
http://okweb.jp/kotaeru.php3?qid=1225216

その他の回答 (2)

  • matsu_jun
  • ベストアンサー率55% (146/265)
回答No.2

頂いた情報だけではきちんとしたものは作れませんが、取り合えず以下のような動きをするマクロを作ってみましたので、よろしければご利用ください。 1) まず、入力用シートの他に、社員番号の名前のついたシートを用意します。 2) 入力用シートのセルA1に社員番号を入力します。 3) 入力用シートのその他のセルに値を入力、もしくは値を変更すると、   先に入力した社員番号のシートの同じ位置のセルに値が反映されます。 4) 入力用シートのセルA1が空欄の時は、他のセルに値を入力しても変化しません。 以下のソースを、入力用シートのオブジェクトとして挿入します。 'ここから------------------------------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False If Target.Address <> "$A$1" And Range("A1").Value <> Empty Then Sh_Nam$ = CStr(Range("A1").Value) Worksheets(Sh_Nam).Cells(Target.Row, Target.Column).Value = Target.Value End If Application.EnableEvents = True End Sub 'ここまで------------------------------------------------------------- 社員番号を入力するセル位置を変更したい場合は、上のソースの3行目に2箇所書かれているアドレスと、 4行目に1箇所書かれているアドレスを変更してください。 最初のアドレスだけは絶対参照です。「$」は消去しないでください。 貼り付け方が分からない場合は、以下の説明をお読みください。 1) Excelの入力用シート(シート名はお好きなもので結構です)のタブを右クリックします。 2) 出てきたメニューから、「コードの表示(V)」を選択します。 3) 起動されたMicrosoft Visual Basicの右側の白い部分に上のソースをコピーして貼り付けます。 4) Visual Basic を終了します。 以上ですが、残念ながら、複数のセルを選択して一括で編集には対応していないと思います。また、社員番号が001というように0から始まる場合は、入力セルの書式を注意しておかないといけませんね。いっそのこと社員番号の入力セルをリストにして選択させたほうがいいかもしれません。 さらに情報があれば、もう少しスマートなものになるとは思いますが、上のものでも結構利用できるのではないでしょうか。

hiromi_jj
質問者

お礼

とてもご丁寧な回答ありがとうございます。 しかも、マクロまで作っていただいて、 感動しました。 早速貼り付け作業にかかろうとしてみたのですが、 2)の所でつまづいてしまい、うまくいきません。 「コードの表示(V)」というのが、見当たらないのです。 使用しているのが、エクセル97と古いからでしょうか??

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

単純に参照で反映するとすると、 入力シートが再利用できないので、 入力が終わった時点で、マクロを起動して、 入力されている社員番号でその人のシートに転記するというような感じになると思います。

hiromi_jj
質問者

お礼

ありがとうございます。

関連するQ&A

  • エクセルで入力用の場所に入力したら、入力内容が番号ごとに反映される方法を教えてください。

    エクセルで入力用の場所に入力をしたら、その入力内容が番号ごとに別のシートに反映されるようにしたいのです。 反映される表は、『材料費の表』と『会計帳簿』です。 入力項目は 1.仕入先 2.月日 3.工番 4.材料区分 5.材質 6.種類 7.品名 8.寸法 9.数量 10.単位 11.重量 12.単価 13.仕入金額 14.支払金額 15.差引残高 16.備考 この16項目の中から 材料費の表には 1.仕入先 2.月日 3.工番 4.材料区分 5.材質 6.種類 7.品名 8.寸法 9.数量 10.単位 11.重量 12.単価 13.仕入金額 16.備考 の項目を転記させ、1工番につき1シート、工番ごとに振り分けたいんです。 ※工番25=シート1  工番26=シート2 というように…。 工番は100番前後まであります。 会計帳簿には 1.仕入先 2.月日 7.品名 8.寸法 9.数量 10.単位 11.重量 12.単価 13.仕入金額 14.支払金額 15.差引残高 16.備考 の項目を転記させ、1仕入先につき1シート、仕入先ごとに振り分けたいんです。 仕入先の数は100前後です。 それぞれ1年分のデータを入力しないといけないので10000行はほしいのです…。 入力する内容がたくさんで、でも中身は同じなのでどうにか連動させて入力する手間を省きたいのです。 私はコンピューターのことが全然わからないので、どうしても人より時間がかかってしまいます…。 他にもやらなければならない仕事がたくさんあってどうしてもこれだけのために時間を割くことができないのです…。 いろんな方の質問を参考にやってみようと思ったのですが何が書いてあるのかちんぷんかんぷんで… お忙しいかとは思いますが、こんな私を助けてください。

  • エクセルで入力した内容の消去方法

    エクセルで、VBAを使用し、シート1に顧客情報(氏名、年齢、番号等)を入力し、ボタンを押すことでシート2にその内容を反映させるプログラムを作成しました。 ところが、入力後前のデータが残ってしまい、いちいちそのデータを消去しなくてはならず、困っています。 何か入力項目のみを一括して消去できるような方法はありますでしょうか? 宜しくお願いします。

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

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

  • 入力したデータをほかのシートに反映できますか?

    現在エクセル2007を使用しています。一つのシートに入力した内容をほかのシートに反映させることはできますか? 例えば一つのシートに1○○2○○3○○・・・・6○○といったように項目を設けて全体を入力します。 その項目ごとにほかのシートに反映させることはできるのでしょうか?? 方法がありましたら教えて下さい!!

  • エクセルで入力したものを別ファイルに反映させるには??

    あるファイルで入力したものを、シートに反映させるのではなく、別のファイルに反映させたいのですが・・・ 例えば、入出金一覧表に記入した金額や項目を別ファイルの請求書に反映させる、ということをしたいのですが何かよい方法はありますか?同じファイル内の反映は可能でも別ファイルへの反映は無理でしょうか?

  • エクセルの表を更新する方法

    エクセルの表を更新する方法を知りたいです。 現在の状況 エクセルのSheetに「入力表」というものがあって、その表に数値を入れなおすとその数値が他のSheetに全て反映されるような仕組みになっています。 入力表の項目、品目が増えたので、他のsheetに反映する仕組みをそのままに、入力表の項目を増やしたいです。 「行を挿入」では、、他のsheetに反映する仕組みを使えませんでした。 つたない文章で申し訳ないです。 回答して頂けたら助かります。 よろしくお願いします。

  • マクロのくみかた

    会社のDFSでの作業になるのですが・・・ 社員それぞれがシート1に必要事項を入力することにより、その内容を シート2に反映させることによりシート2への同じ項目の入力を省略させたいのです。 たとえば 社員aがシート1のA1に「社員番号1111」と入力し、ボタン1を 押すことにより、シート2のA1に「社員番号1111」と反映させる。 次に社員bがシート1のA2に「社員番号2222」入力し、ボタン1を押すことによりシート2のA1に「社員番号2222」と反映させる。 つまり シート1には社員それぞれが入力した社員番号を一覧として蓄積していき、シート2には入力した各人の情報しか表示をしないようにするというものです。 このような時にはボタン1のコードはどのようになりますでしょうか。 わかりにくくすいません。

  • エクセルで簡単入力

    こんばんは、宜しくお願い致します。 エクセルに複数シートがあり、1枚目のシート行に1サン、2サン、3サン・・・・と入力されていて、横行では、国語、算数。2枚目のシート行に1サン、2サン、3サン・・・・とシートに入力されていて、横行では、性格、年齢、身長と入力されています。 同じ人なのに項目が異なっているため、シートを変えながら入力するが面倒です。シートを変えず1枚のシートから入力表みたいなものを用意して該当する人と項目にデータを簡単に入力する方法はないでしょうか。

  • エクセルでセルに入力した数字をSheetに反映できますか

    現在、メンテナンス表をエクセルで作成しています。 数が膨大で手が追いついていない状態です。 そこで、セルに入力すればそのデータが別のSheetに反映できればかなり短縮できるので、そのような方法があれば教えてください。 例えば、A1に「123」と入力するとSheetの名前が「123」のSheetの選択したセルに反映される。ということがやりたい事です。 400近いSheetがあり、毎日全部ではありませんが、かなりのデータを入力しなければいけません。 どうかよろしくお願いします。

  • 【エクセル】シート間で反映させたいのですが、結合されたセルがあるため困っています。

    お世話になります。 あまりエクセルに詳しくないのですが、データをエクセルで表にまとめなくてはならなくなりました。 データは複数シートでまとめています。 Sheet1にすべてのもととなる名簿をまとめ、このシートを更新すると他のシートにも自動的に反映するようにしたいと考えています。 その方法として、「=Sheet1!A1」などと入力して反映させようとしていたのですが、複数あるシートのうち何枚かは反映させたい部分がセルの結合されており、上記のようにするとひとつ飛ばしに反映されてしまいます。 例: 【sheet1】 1 Aさん 2 Bさん 3 Cさん 4 Dさん 5 Eさん 6 Fさん 【sheet2】 1   Aさん 2 3   Cさん 4 5   Eさん 6 わかりにくいですが、このような感じです。 sheet1を無理やりセルの結合させることも考えたのですが、私以外の者も表を扱うこととなるためなるべくシンプルにしたいと思い断念しました…。 セルの結合はそのままで、Sheet1に入力した内容を他のシートに反映させる方法はありますでしょうか? 似たような質問も検索してみたのですが、関数?など複雑なものが多く、よく理解できませんでした。(平均値や標準偏差など簡単な計算はしたことがあるのですが、複雑なものは未経験です。) わがままを言って申し訳ございません。 勉強不足でありご迷惑おかけしますが、何卒よろしくお願いいたします。

専門家に質問してみよう