• ベストアンサー

エクセルでデータを追加する方法

エクセルで、同じセルに入力した内容を別のワークシートに 履歴として時系列に記録する方法(関数かマクロ)はありますか? (事例:試作品を貸し出しを管理する際、貸出先・貸出日・返却日を所定のセルに上書きしているが、その履歴を別のワークシートに自動的に書き込めるようにしておき、いつ誰に貸し出したかがわかるようにする。)

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

  • ベストアンサー
  • a987654
  • ベストアンサー率26% (112/415)
回答No.2

マクロ記録でご自分で造られたら如何ですか? 方法は、 1.マクロ記録を起動  (2003では ツール→マクロ→マクロ記録、2007では 開発タブ→コードの中のマクロ記録)   マクロ名のBOXが出るので名称を変えるかそのままでOKにする。 2.履歴のシートに行き1行目を行挿入  (行番号1の所で右クリック→挿入)  (複数行必要な場合は必要な行数を選択して挿入の事) 3.入力用シートに移り  コピーしたい領域を選択して右クリック→コピー 4.履歴のシートに移り  A1セルで右クリック→貼り付け又は値を選択して貼り付け  (コピー元に数式のある場合は必ず値貼り付けで数式を排除の事) 5.入力用シートに移り”記録終了”をクリック。 これでマクロを動かせば必要なデータが保管できると思います。

9613ken
質問者

お礼

ありがとうございました。アドバイスいただいたとおりやってみました。上手くいきそうです。早速明日会社でやってみます。

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

「フォーム」を利用する方法です。 「フォーム」の画面上に貸出先、貸出日、返却日などの項目を表示させ、それらの項目の窓にデータを入力することで一つのシート上に次々とデータを入力して行くことができます。別のワークシートに書き込むといったことは必要ありません。しかも、入力したデータを検索することも容易です。いつ誰に貸したかを検索することもできます。 「フォーム」をシート状に表示するためには、初めにそのための準備が必要です。 「Office」ボタンから「Excelのオプション」をクリックします。 画面の左の窓で「ユーザー設定」を選択します。 右のコマンドの選択では「すべてのコマンド」を選択します。 「区切り」の窓から「フォーム」を選択し「追加」をクリックしてOKします。 これによってクイックアクセスツールバー上に「フォーム」のアイコンが配置されます。 そこでシート上で項目の書かれた列を選択してから「フォーム」をクリックします。警告の画面が出ますがそのままOKすればフォームが表示されます。 その後については試行錯誤を繰り返しながら覚えてください。

9613ken
質問者

お礼

大変参考になりました。ありがとうございました。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

エクセルのバージョンはいくつでしょう。2007ですか?

9613ken
質問者

補足

はい。2007です。

関連するQ&A

  • 図書管理の表をExcelで作るのですが‥‥

    職場で、図書管理のデータベースをAccessで作って使ってました。 しかし、Access入のPCが少ない為に、「Excelで作って」と上司に言われました。 「貸出」「返却」の2シートは作成済で、今は「返却済」シートを作成中です。 「貸出」と「返却」の2シートに“同一”のものが有った場合、それを「返却済」シートに表示したいと思いました。 マクロを使おうとかと思いましたが、PCが市の物で、メインユーザーはパス付。セキュリティの関係上、マクロが利用できない可能性があります(上司は、マクロに難色を示しました)。 関数にしようと思いましたが、悲しいかな、全く思いつきません。 シート例は‥‥    A    B     C 1 貸出者  本の名前  貸出日   2 あいう  Excel    5/4     ←貸出シート 3 かきく  Word     5/5      A    B     C 1 返却者  本の名前  返却日   2 あいう  Excel    6/1    ←返却シート 貸出、返却シート共に、「あいう」さんが存在し、「あいう」さんは、本を借りて、返却した事が分かります。 この2シートの行の情報が、返却済シートのA2セルに「あいう ABC Excel」と表示させたいのです。 IF関数を使って、シートに同一のものがあれば‥‥と式を作ろうとしましたが、なかなか上手くいきません。 どのような式を作ればいいのでしょうか? IF関数以外に、式があれば、そちらも教えてください。 お願いします。

  • Excelの関数に詳しい方、教えてください

    Excelの関数が得意な方、どうか教えて頂きたいことがあります。 会社の備品の、貸出し表を作成してほしいとボスに頼まれました。 作ったシートは添付したものとほぼ同じで、とても簡単なものです。 Sheet1に、備品と貸出し状態。 sheet2~ Sheet1にのせた備品の、貸出し帳(誰がいつ借りて、いつ返したかを入力)。        ひとつのSheetに、ひとつの備品の貸出し帳です。        履歴がずっと残ります。 このsheetで、以下のことができるようにしたいのです。 (1)Sheet1の「状態」のところには、貸出し帳に何も入力がない場合は、常に貸出し可と表示される (2)貸出し帳の「貸出し日」に入力が入るとsheet1の「状態」は「貸し出し中」に変化する。 (3)備品が返却され、「返却日」に入力が入ると、またsheet1の「状態」はまた、貸出し可に戻る。 以下この繰り返し。 難しいのですが、これは関数で対応可能でしょうか? インターネットでいろいろ調べて、この関数使えそうかな?と思ったのをいろいろ試してますが、 なかなかうまくいきません。 (たとえば、Sheet2のセルC15に入力が入った場合のみ・・なら、うまくいくのですが、  私がやりたいのはセルC15以下のどこでも、入力が入ったら貸出し中に切り替わってほしいのです。そして、E15以下のどこでも、入力が入ったら貸出し中に戻ってほしいのです。 このあたりがうまくいきません。 複数セルを選択すると、とたんにエラーになります。 どなたか詳しい方、Sheet1の「状態」のセル(C3以下)に入れる計算式はどうなるのか、 教えて頂けると嬉しいです。    

  • Excelで複数条件で重複したデータも抜出したい。

    はじめての質問でわかりづらいと思いますが、お願い致します。 Excel2003で建築部材の入出庫管理をしたいと考えていますが、日々の建築部材出入の記録用の入力シートにデータがあり、そこから貸出し状況シートへ(貸出に対してバラバラ返却の状況)を複数の条件にて重複したデータも抜出したい。 貸出し状況シートのABCDはなんとか抜出しましたが、EFGHIJ・・・が分かりませんのでご教授下さい。 入力シート   A      B      C   D      E      F G ・・・・ 1 部材番号 入出庫日 数量 貸出現場 出入処理 2 ABC100  9月10日   50  空陸   返却 2 DEF100  9月10日   20  空陸   返却 3 DEF100  9月6日    30  空陸   返却 3 DEF100  9月4日    50  空陸   返却 4 DEF100  9月2日   100  山川    貸出 5 DEF100  9月1日   100  空陸    貸出 6 ABC100  9月1日   100  空陸   貸出 ・ ・ 貸出し状況シート   A      B       C   D     E     F  G     H   I      J・・・・ 1 貸出現場 部材番号 出庫日 数量 返却日1 数量1 返却日2 数量2 返却日3 数量3 2 山川 DEF100  9月2日  100     3 空陸   DEF100  9月1日  100  9月4日 50  9月6日  30  9月10日 20 4 空陸   ABC100  9月1日  100  9月10日 50 5   ・ ・

  • excelマクロorVBAの学習

    貸出台帳を作成していますが、関数のみですと限界があります。 画像の上が「シート1」下が「シート2」です。 シート1に管理者が青色の貸し出す機材を登録して、利用者が「貸出」ボタンを押して、黄色の氏名・使用場所・貸出日・返却予定日・備考などを入力します。 入力が終了すると自動で在庫状況が「なし」に変更する。 シート2は、返却確認者が「返却確認者」ボタンを押したら、塗りつぶしていない箇所の貸し出した記録を自動で入力されて、黄色の「返却確認日」「返却確認者」を入力します。 入力が終了するとシート1の在庫状況が「あり」に変更される。 簡単にまとめると、シート1には現在の機材貸出状況が分かるようにする。 シート2は、過去の貸出記録を残すようにします。 貸出記録は、自動で入力する。 使用するツールはExcel以外はNG 上記のことが可能ならば、関数でも良いのですが厳しいと感じています。 やはり、VBAの学習が必要かと思うのですが、お勧めの参考書などありませんか。

  • Excelの関数について

    Excelの貸出台帳を作成したいのですが、関数が全く分りません。 過去の貸出機器の記録も残したいのですが、個々が記録を入力すると入力を忘れてしまう可能性があるので、自動的にlogを残したいです。 (1)貸出台帳で使用者が入力する箇所は「E~I」で、「B~D」は固定です。 (2)貸出台帳「I」の返却日に使用者が日付を入力すると自動的に別シートの貸出記録の「B~H」に反映させたい。 (3)確認者が貸出記録の「I」確認項目に「○」を選択すると、貸出台帳「E~I」を自動で削除して、再度別の使用者が入力できるようになる。 このような管理がExcelで可能でしょうか。 全く同じでなくても、記録ミスを無くせるのなら、他の方法でもよいです。 あくまで、管理台帳は現状の貸出の有無で、貸出記録は過去の貸し出し状況の把握です。 こ よろしくお願いします。

  • excel vbaでマクロが作りたいのですが

    マクロ初心者です。 番号  貸出日  返却予定日 図書名  貸出先   返却日 1   2012/12/5 2013/1/5  マクロ  ジョニーさん 上のような表を作成していて、予定日を過ぎても返却がない場合、自動的に番号欄に網掛けをして、実際に返却されて返却日が入力されたら、網掛けが消えるというマクロがつくりたいのですが。 素人なりに試行錯誤していますが、なかなか出来ずに困っています。 どなたか、わかりやすく教えていただけませんか。

  • Excelのデータ1行を1シートに自動転記する方法

    複数行あるExcelシートで、各行に入力されているセルのデータを、 別シートの所定の位置に配置して行く方法はありますか。 もしかしてマクロとかになりますか。 具体例を挙げますと、例えば身体測定データがあって、氏名/身長/体重がそれぞれA列/B列/C列に1人あたり1行で並んでいて、そのデータが10人分(10行)あったとすると、別に10シートが生成されて、それぞれのシートに1人分(例えば第一シートのA1セルに1人目の氏名、A2セルに1人目の身長,A3セルに1人目の体重)が書かれているようなイメージです。

  • 検索の方法(エクセル マクロ)

    マクロは記録マクロしかできない超初心者です。 エクセルのsheet1のA1のセルに入っている内容(都度変更)と同一のセルをsheet2で検索し、カーソルをそこに移動させるマクロ記述をしたいのですが、どうなりますか。 記録マクロで、sheet1のA1をコピーし、sheet2に移動して検索窓で貼り付けて「次を検索」とやったのですが、記述をみるとA1の内容がそのまま記述されていて汎用性が無いようです。 よろしくお願いいたします。

  • EXCELのシート名を自動参照

    EXCELのワークシートの名称を、例えばA1セル内にある文字列を参照させて変更させるマクロは可能でしょうか? 具体的には ・日々使用している様式(ワークシート)をコピー ・コピーしたシートへ、他のファイルからデータを貼付 ・貼付けたデータのひとつのセルを参照してワークシートの名前を変更 といった作業をマクロで一発処理しようと考えています。 参照させるデータはロットナンバーですので、毎回異なります(セルは同一です)。 単純にマクロの記録で該当セルをコピーした後、名前タブへ貼り付けてもうまくいきませんでした。

  • エクセルでの別シートへのデータ貼り付け

    マクロの記録である程度までは出来たのですが、 1つ1つセルを選択してペーストと、、、 かなりながーいプログラムになってしまいます^^; 何か良い方法はないでしょうか? 後、結合されたセルの一部を変更することはできません。とエラーが出たりもします;; その1つ前のセルとか隣のセルは同じ形式なのに、別シートに貼り付けられるので、、、謎が深まるばかりです;; 良い案があればぜひ教えて頂きたいです。よろしくお願い致します。

専門家に質問してみよう