重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

仕事で作成する商品(A~Z)の工程表が保存されたファイル(ファイル名=A~Z)があります。
それらのファイルは商品を作成する度に、作成日を入力してその都度発行しています。

これとは別に、ファイル1があり、そこにはどの商品の工程表をいつ発行したのかという一覧表にしており、工程表を発行したらファイル1を開き、手入力し、今までの発行履歴のようになっています。

が、このやり方ではファイル1に入力する際、入力漏れや誤入力が起こりかねません。

ファイルAを触ると、それを自動的にファイル1の最後行に入力させるということは不可能ですか?

(それぞれのファイル=A~Zやファイル1などをひとつのファイルにまとめて、シート毎にA~Zとすることもできなくはないです。)

ご教授よろしくお願いします。

ちなみに、excelはそこそこ理解しているつもりですが、accessやVBAなどの知識はありません。

A 回答 (3件)

>(それぞれのファイル=A~Zやファイル1などをひとつのファイルにまとめて、シート毎にA~Zとすることもできなくはないです。


まずは、こちらを先に実行したほうが良いでしょう。
次に
>ファイルAを触ると、それを自動的にファイル1の最後行に入力させるということは不可能ですか?
ここの発想を変えます。
発行履歴のシートに
 A列 B列
日付 シート名

シート名というシートを準備して
シート名の一覧を準備します。

のこりは、AからZまでのシート
作業の手順は、発行履歴のシートに日付とシート名を入れます。
(B列のシート名には、入力規則でシート名一覧を入れる用意すればミスがなくなります。

発行履歴のシートのうえ部分にでも ボタンを配置
ボタンを押すと最後に入力したシートのみ、発行ファイルとして別ファイルに別途作成する機能を
考えると便利だと思いますが、いかがでしょうか。
    • good
    • 0

> excelはそこそこ理解しているつもり



なるほど。
そうすると「そのファイル構成は効率が悪いですよ」と言えば
どのように効率が悪いかはご理解いただけるということですね。

もう一つ、
> ファイルAを触ると、それを自動的にファイル1の最後行に入力させる
これを実現できる「一般機能」は無いですよ、と言うこともご理解いただけますね。

以上、回答でした。


以下、蛇足です。

仮にこの
> ファイルAを触ると、それを自動的にファイル1の最後行に入力させる
を実装できたとしましょう。(ほぼ確実にマクロのお世話になるでしょう。)

「い」と言う社員さんが「A」のファイルを開きました。
でも、いじる前に気が変わって(別件を思い出して)発行を途中で辞めました。
事もあろうに(いじっていないにも拘らず)上書き保存して閉じてしまいました。
結果、「ファイル1」の最終行に「この履歴も残ってしまいました」。

おやおや?
> 入力漏れや誤入力が起こりかねません。
自動化したはずなのに「誤記入」が発生してしまいましたね。
本末転倒ではないですか?

要するに、エクセル向けの処理では無いですよ、と言うことです。
それなら「読み取り専用の雛形」を作っておいて、
作成したら「名前を付けて保存」。
エクスプローラーで作成履歴を管理してやる方が早いかもしれませんね。

以上、参考までに蛇足でした。
    • good
    • 0

ご利用のエクセルのバージョンが不明なので詳細は割愛しますが、外部データの取り込みを使い、ファイルAの所定のデータを抜いてくる「クエリ」をファイル1に埋め込んで取ってこさせる方法が一つあります。


ファイルABCやブック1の実際の内容によっては、ピボットテーブルレポートを使い、外部ブックとしてファイルABCから値を取ってこさせる方法が使える場合もあります。


>excelはそこそこ理解しているつもりです

では、エクセルには「数式を使って値を参照してくる」機能はあっても、原則として「何もないセルに値を書きださせる」機能というのはあんまり無い事は理解してますね。

ご相談の事を簡単にクリアする手段の一つとしては
1.ファイル1にファイルABCからの参照式をずらっと並べて配置しておく
2.オートフィルタなどを上手に使い、有りデータだけを上手に表示する細工をする
といった段取りになります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!