各工場で製造したデータを本社工場にエクセルデータで報告しています。
本社では、報告受けて一覧表に取りまとめる作業を行いますが、現在、手作業で一覧表を作成しています。事務の省力化を図りたく、関数等を屈指して自動で一覧表を作成することができないものでしょうか。
現在のエクセルの様式は、シート区分で左側から「一覧シート」、そして各工場からの報告データを「A工場」、「B工場」、「C工場」と順次張り付けています。
また、一覧表は10行ですので、工場の項目数によっては次の列へと自動で繰り下がって欲しいことと、数量が30以上の場合はC工場の様に数量60となっている場合は一覧に30の倍数分の行を追加する必要があります。
これらの条件で一覧シートと自動作成する方法を教えてください。
No.2ベストアンサー
- 回答日時:
工場ごとのシートを、手作業で一覧表にコピペしてるんですね。
これは辛い…非効率…私には無理。
一覧自体も、なんで複数工場を、10行刻みで、合計も交えてたり…管理しにくそう。
でも、決まってる書式ならあわせるしかないですよね…。
関数でやろうとすると、ちょっと面倒くさいです。
マクロ作っちゃうと3秒もかからず終わる作業です。
ザクッと作ってみたので興味があればどうぞ。
(使ってるバージョン知らないけど・・・)
まず、開発タブの表示
開発タブの表示 | Office2010 | 初心者のためのOffice講座
https://hamachan.info/win7/Office/kaihatu.html
マクロ無効なら設定変える
【マクロの設定】画面の表示方法 | Office2010 | 初心者のためのOffice講座
https://hamachan.info/win7/Office/macros.html
開発タブの左の「Visual Basic」をクリック
「挿入」→「標準モジュール」
で開いた窓に、下のごちゃごちゃ書いてるのを貼り付け。
表に戻って、開発タブの「マクロ」から「sample」を実行。
質問用に作ったファイルなら、これでそれっぽく動作すると思います。
(シート名が "一覧" "A工場" "B工場" "C工場" なら。)
動かなかったら、一度保存(マクロ有効ブック)して、開き直してからお試しを。
実際に運用してるファイルに適用する場合は、
上の方の " " で囲った部分をシート名に書き換えてね。
"作業用"はいじらなくていいです。
↓作ってみたやつ
-------------------
Sub sample()
Dim sh(2) As String
Dim NewWorkSheet As Worksheet
matome = "一覧"
sh(0) = "A工場"
sh(1) = "B工場"
sh(2) = "C工場"
Set NewWorkSheet = Worksheets.Add()
NewWorkSheet.Name = "作業用"
gyou = 1
For i = 0 To 2
With Sheets(sh(i))
matubi = .Cells(Rows.Count, 2).End(xlUp).Row
.Range(.Cells(1, 1), .Cells(matubi, 4)).Copy
Cells(gyou, 1).Select
ActiveSheet.Paste
Cells(gyou + matubi, 1) = "合計"
Cells(gyou + matubi, 1).HorizontalAlignment = xlCenter
Cells(gyou + matubi, 4) = WorksheetFunction.Sum(.Range("D1:D100"))
Rows(gyou + 1).Delete
End With
gyou = gyou + matubi
Next
matubi = gyou - 1
For i = gyou To 2 Step -1
If Cells(i, 4) > 30 And Cells(i, 1) <> "合計" Then _
Rows(i + 1 & ":" & i + Int((Cells(i, 4) - 1) / 30)).Insert
Next
matubi = Cells(Rows.Count, 1).End(xlUp).Row
Sheets(matome).Select
retu = 1
For i = 1 To Int((matubi + 9) / 10)
If i > 1 Then Range("A2:D2").Copy Cells(2, (i - 1) * 4 + 1)
With Sheets("作業用")
.Range(.Cells((i - 1) * 10 + 1, 1), .Cells(i * 10, 4)).Copy
Cells(3, (i - 1) * 4 + 1).Select
ActiveSheet.Paste
With Range(Cells(2, (i - 1) * 4 + 1), Cells(12, i * 4))
.Borders(xlEdgeLeft).Weight = xlMedium
If i = 1 Then .Borders(xlEdgeLeft).Weight = xlThin
.Borders(xlEdgeTop).Weight = xlThin
.Borders(xlEdgeBottom).Weight = xlThin
.Borders(xlEdgeRight).Weight = xlThin
.Borders(xlInsideVertical).Weight = xlThin
.Borders(xlInsideHorizontal).Weight = xlThin
End With
End With
Next
Application.DisplayAlerts = False
Sheets("作業用").Delete
Application.DisplayAlerts = True
End Sub
ご丁寧に時間を割いてマクロまで作っていただき、実際に取り込む前のお礼となっております。
実際のエクセルに取り込んでみて所期の目的通りとなれば助かります。
ありがとうございます。
No.4
- 回答日時:
>事務の省力化を図りたく、関数等を屈指して自動で一覧表を作成することができないものでしょうか。
現在の書式を使い続ける限り、その目的は達成できないと思います。
紙の帳票時代の負の遺産をなくして、PCで処理するのに適した書式に変更するべきです。
加えて言うと、紙の帳票で見たとしても現在の書式は見やすいものとはいえません。
ざっくりですが、以下のような感じにすれば、工場名以外はコピペでいけるでしょう。(コピペで作れる書式にするべき)
こうしておけば集計やグラフ化も簡単にできますし、フィルタ機能を使って特定の品名だけの集計などもできます。
工場ごとの合計もデータの途中にいれるのではなく、データ最下行の下に入れるか、見出し行の上にいれるかにします。当然ながら数式でやります。
工場名 No. 品名 規格 数量
A 1 aa 5
A 2 ab 3
B 1 ac 2
B 2 aa 2
C 1 aa 5
C 2 ab 3
A 合計 8(数式で算出)
B 合計 4(数式で算出)
C 合計 8(数式で算出)
全 合計 20(数式で算出)
No.3
- 回答日時:
No.1です。
仮に書式の見直しが行なわれるようなら、再度質問なさってみて下さい。
今回の件では回答は出てますし、多分私が提示しても解読困難かもですよ。癖がありますので。
でもこの管理方法が仮に『U(I?)SO9000』とかに絡んだ記録だったとしたら、元内部監査員としては見逃せないでしょうね。
『今まで使ってきた決まっている書式だから』に対し『分かりやすい書式になぜ変えない』ってね。
だからまともに内部監査の監査員をやらせてもらえなかったんだろうなぁ~。
No.1
- 回答日時:
画像がよく見えないので、
>数量が30以上の場合はC工場の様に数量60となっている場合は一覧に30の倍数分の行を追加する必要があります。
数量が30以上で且つ実際の数が60であれば行の追加(ずらす)を必要とするが、59ならそのまま『59』と入れるのでしょうか?
あと表が10行ずつであると言うのは置いておくにしても、何故『工場名』がそこに含まれるのか?と思ってしまいます。
これって見易いですか?
あと工場の順番は毎月同じであるとしてもやはり工場毎に表を分けた方が見易い感じはするのですが?
個人的には質問の通りにやるとしても『合計』を出すなどの処理と、送られてきた元データの管理と合わせ、関数(数式)では難しくないですかね。
経験豊富な方ならやり遂げてしまうかもですけど。
でもデータ数や個々の数量が規定以上とかだと右方向に表がズラズラ伸びていくんですよね?
『工場』毎に縦にした方がまだ見易く思うけどなぁ。
貴重なアドバイスありがとうございます。
内部だけで見ていましたが、今回、ご意見をいただくことにより見方が変わってきました。ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
会社なら弊社、工場なら?
-
隣の工場の騒音についての悩み
-
ビジネス文書(文中で「様」を...
-
食品工場での氏名の表示方法(...
-
見積書の件名に「貴 ○○工場・・...
-
パンの袋の中のビニールは何の...
-
裾直しにかかる時間
-
めっき工場 危険
-
CHEMICAL SECRET...
-
工場見学の報告書の構成はどの...
-
工場のサイレンがでかすぎます...
-
三相200Vから単相200V...
-
産業廃棄物回収会社 の事務所...
-
一流大学院卒でもメーカー就職...
-
市販の食パンの端
-
小学生の国語 一文はどこから...
-
メーカーの営業として入ったの...
-
製造用語「流し目検査」を英語...
-
宅建の受験対策でゴロ合わせの...
-
工場のシンナー臭の悩み
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CHEMICAL SECRET...
-
会社なら弊社、工場なら?
-
ビジネス文書(文中で「様」を...
-
隣の工場の騒音についての悩み
-
理系院卒でも大半が工場勤務っ...
-
一流大学院卒でもメーカー就職...
-
見積書の件名に「貴 ○○工場・・...
-
三相200Vから単相200V...
-
クリーニングの工場で働いた事...
-
めっき工場 危険
-
【工具】アンビルの角みたいな...
-
これはやばいでしょうか? こん...
-
裾直しにかかる時間
-
ご安全に! この挨拶、英語で...
-
韓国のサムスン財閥のサムスン...
-
パンの袋の中のビニールは何の...
-
工場勤務初心者ですが、夏場は...
-
トロイの木馬 PC初期化について
-
営業を通さずに客先から工場へ...
-
工場で働いてるんですが 救出が...
おすすめ情報