[[20150319144650]] 『CSVデータから一覧表作成・印刷後保存しないで閉ax(ま〜さん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『CSVデータから一覧表作成・印刷後保存しないで閉じる』(ま〜さん)

はじめまして。
毎日の作業なので、なんとか簡単にできないかと思い、こちらで質問させていただきました。

会社の独自のシステムより、受注データをCSVデータで出力し、
それを出荷一覧表にして印刷した後に保存しないで閉じるというVBAはできますか?
CSVデータはエクセルで出力されます。そこから下記の一覧表を作成しています。

【CSVデータ】

	A	B	C	D	E	F	G	H	I	J	K	L	M	N	O	P	Q	R
1	納期[2015/03/01]-[2015/03/31]得意先[10095  ]-[10095  ]部門[0100]-[9999]全て 大分類[   ][                    ] 中分類[   ][                    ] ** 得意先別納期一覧 ** DATE : 2015/03/12							
2	得意先CD	得意先名	伝票No	行No	受区	受注日	納期	部門CD	部門名	部品CD	部品名	単価	数量	受注金額	受注残数量	受注残金額	相手先注文No	備考
3	10078	(株)○○○○	281873	1	2	2015/3/2	2015/3/16	5001	製造部	△△△	A	465.5	768	357504	768	357504	4003438262	
4	10078	(株)○○○○	281980	1	2	2015/3/4	2015/3/18	5001	製造部	◆◆◆	B	465.5	1056	491568	1056	491568	4003450079	
5	10078	(株)○○○○	282077	1	2	2015/3/6	2015/3/20	5001	製造部	◆◆◆	B	465.5	672	312816	672	312816	4003459645	
6	10078	(株)○○○○	282312	1	2	2015/3/10	2015/3/24	5001	製造部	△△△	A	465.5	672	312816	672	312816	4003469602	
7	10078	(株)○○○○	282384	1	2	2015/3/11	2015/3/25	5001	製造部	◆◆◆	B	465.5	1056	491568	1056	491568	4003475529

−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

【出荷一覧表】

   A	               B	 C	 D	 E	 F	               G                                    
1|出荷日	              |伝票No	|部品CD	|部品名	|出荷数量	|相手先注文No	|備考                    | 
2|2015/3/16	|281873	|△△△	|A	|768	|4003438262	|                         | 
3|2015/3/18	|281980	|◆◆◆	|B	|1,056	|4003450079	|                         | 
4|2015/3/20	|282077	|◆◆◆	|B	|672	|4003459645	|                         | 
5|2015/3/24	|282312	|△△△	|A	|672	|4003469602	|                         | 
6|2015/3/25	|282384	|◆◆◆	|B	|1,056	|4003475529	|                         | 

※納期→出荷日  数量→出荷数量 に変更しています。

表は罫線で囲んであります。
一覧表の高さは30に設定。
A4サイズ横で全ての幅が1ページに収まるように印刷設定。

どうぞよろしくお願いいたします。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 会社のシステムから出力されたCSVなりエクセルブックなりを加工するのは、なんとでもなりますが
 会社のシステムに手を伸ばして、そこからデータを引っ張り出すというのは、基本的には無理です。

 会社のシステムがどんなものかもわかりませんし、どんなDBを使っているかもわかりませんし
 DBの中の項目がどんな形で保持されているかもわかりませんから。

 たとえわかったとしても、勝手にデータを抜き出していいかどうか、これは、会社のシステム主管部所
 (IT部門や、管理部署)の許可がいるでしょうね。

 すでにアップされたようなイメージのCSVファイルがどこかのディスクスペースにあり
 それをVBAで加工するのは、できますよ。

(β) 2015/03/19(木) 15:29


 みたところ、エクセルに出力された後の処理についてみたいですけど

 どう見てもマクロの記録が一番手っ取り早いと思われます。

(稲葉) 2015/03/19(木) 16:02


 イメージがずれていてわかりづらいんですが、出荷一覧表の1行目のタイトルと、エクセルに展開したCSVデータの2行目のタイトルが同じなら
 フィルターオプション(フィルターの詳細設定)一発ですね。操作としても、手間がほとんどかかりませんし、マクロがいいなら、それを
 マクロ記録すれば、ほとんど、そのまま使えるコードが生成されるはずです。

(β) 2015/03/19(木) 16:22


(β)さま、(稲葉)さま

コメントの返信、ありがとうございました。

CSVデータは一度どこかに保存したほうがいいのでしょうか?
そこからデータを取り出してマクロを記録した方がいいのでしょうか?
また、印刷後に保存しないで閉じるというマクロはできるのでしょうか?

質問ばかりですみません。お手数をおかけしますが宜しくお願い致します。
(ま〜さん) 2015/03/19(木) 17:16


いえいえ

仮に、何かの操作でエクセルとして立ち上がっていたとすれば
そのエクセルとしてのシートで直接、加工して、実ようなブックにコピペし
加工後に保存せずに閉じる。こういったことはできますよ。

もちろん、それをマクロでやる場合も同じです。

(β) 2015/03/19(木) 17:36


 衝突してしまいましたが、書いたので・・・

 >CSVデータは一度どこかに保存したほうがいいのでしょうか? 
 はい。
 βさんはこれがVBAではできないと申しています。

 >そこからデータを取り出してマクロを記録した方がいいのでしょうか? 
 保存場所と名前さえ決めておけば、マクロの記録で自動的に開いて、保存しないで閉じる動作も
 記録されます。

 >また、印刷後に保存しないで閉じるというマクロはできるのでしょうか? 
 ↑で述べたとおりです。

 詰まるところ、処理するブックをひとつ作っておき、そのブックへの記録になります。
 マクロの記録なら、こんな感じの手順でやっていけばそれなりにできると思います。

 1)CSVファイルを開く
 2)データを加工する(不要な列の削除、項目名の変更)
 3)印刷設定で範囲を指定する(表の最初を選択して、
   Ctrl+*で表範囲を選択できるので、その状態で印刷範囲の設定
   それでもオーバーするなら、列幅の調整とか、余白を減らすとか
 4)シートを新しいブックにコピーして、任意の場所に保存する
 5)1で開いたCSVファイルを保存しないで閉じる

 βさんがフィルタオプションとおっしゃってますが、みたところフィルタをかけているところはなく、
 単純に整形だけなのでこれだけでも十分かと思われます。

 リボンの開発タブは最初表示されていませんので、オプションから表示させてください。
 わからないことがあれば、記録したコードを提示いただければ、答えてくれる人はいると思います。
(稲葉) 2015/03/19(木) 17:44

 >βさんはこれがVBAではできないと申しています。

 いえいえ、保存もできますし、保存せずに閉じることもできますよ。
 私の表現力がプアだったですかね?反省。

 >印刷設定で範囲を指定する

 よく見ると(よく見なくても?)全くその通りでしたね。
 いまでも、 

 「毎日の作業なので、なんとか簡単にできないかと」・・・簡単にできるはずですね。

 最終的には一覧表のデータとして保存が必要なので、印刷範囲の指定ではなく、
 最初から不要な行、列を削除して印刷して、名前を付けて保存。
 こんなことですね。

 これは、マクロのでる幕でもないですね。

(β) 2015/03/19(木) 17:56


 >会社の独自のシステムより、受注データをCSVデータで出力し、 
 私はこの部分がVBAではできないと思っているのですが、できるんですかね!?

 ならもっと簡単にできる??
(稲葉) 2015/03/19(木) 18:07

 >私はこの部分がVBAではできないと思っているのですが、できるんですかね!?

 ああ、そうでしたか!
 それなら、私がコメントした通り、「できません」ですね。

(β) 2015/03/19(木) 18:23


稲葉さま、βさま

いろいろと教えていただき、ありがとうございました。

稲葉様の手順の通り、マクロの記録をやってみたいと思います。
分からなくなったらまた質問させていただきますので
その際はまた教えて下さい。

(ま〜さん) 2015/03/20(金) 09:24


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.