比較結果出力マクロって出来ますか?No.04752
cuma さん 02/02/17 18:27
 
cuma@毎度お世話になっております。

未だにマクロの壁は厚く進歩無しの私です。

マクロでこんなの可能かどうか知りたいのでご教授お願いいたします。

今は手作業で以下の手順で住所録の差分チェックしてますが、マクロである程度
自動化が出来ないかと思うんです。

1、毎月エクセルファイルの住所録がメールで到着する。

  この住所録は毎回おなじ住所単位で送信されてきます。
  
  たとえば「東京都杉並区の契約顧客」とか。
  
  よって契約顧客に増減が無ければ全く同一のエクセルファイルが来るんです。
  

2、名簿作成元の都合によって、増減した部分を明確にする(網掛けとか、差分
  行には何かの印を付けるとか)事は出来ないそうです。
  
  よって、毎月、エクセルウインドウを2面開いて、前月と今月のエクセルを
  目でチェックしております。
  
  ひどいケースだと内容は実質同一なのに、行が入れ替わっていて、前月は
  Aさんの下の行にBさんがかかれていたのに、今月は上下が入れ替わってい
  る事もあります。
  
  これは私から見て実質的に同じ扱いなので、差分無しですが目で見ると
  複雑に入れ替わっていたりして(入れ替え理由は不明)、差分チェックを
  難解にしています。
  
3、差分がある場合は

  ・先月より顧客が増えている(エクセルの行が増えている)
  ・逆に今月は顧客が減った(エクセルの行が減っている)
  
  と言うパターんですが、

  ・時にあるのは増加と減少が同時に発生していて
   エクセルの行数は先月と同じですが、実は増減した名簿だと言うパターん
   です。
   
  ・また時には顧客名簿自体は同じですが、顧客対応のお届け個数が違うと言
   うケースがあります。
    これはエクセルで見ると、
     cuma 東京都 お届け 10
      だったのが
     cuma 東京都 お届け 11
     
   になったような事です。
   
4、上記から差分を探してます。

ポイント:単純にファイルコンペアするツールでは、上記のような行だけ入れ替
  わっているとか複雑な変更には対応出来ず、またエクセルからCSVに変換し
  た時にも、余分なゴミデータなどの為か?意味のある差分チェックが単純コ
  ンペアツールでは難しいようなのです。

  出来ればマクロで意味のある内容比較が可能ならなあと思います。



マクロ可能ならやりたい範囲は以下です。

事前の手作業

1、先月エクセルファイルと今月エクセルファイルからCSVファイルへの出力
2、秀丸エディタの起動
3、マクロの起動

マクロで自動化したい作業

1、先月と今月のCSVファイルから差分の抽出>結果ファイルへの書き込み

もし、マクロでの差分チェックが可能そうならば、具体的に本当に可能かどう
か?
これはエクセルの実体ファイルに近い実物を見て頂く必要もあるかなあと思うの
ですが。

急いでいる話しでは無いのですが(現状手で比較してますから)、マクロ勉強も
かねて気長に出来たらなあと思っております。

[ ]
RE:04752 比較結果出力マクロって出来ますNo.04756
ひろ さん 02/02/18 00:18
 
 cuma さん今日は、ひろです。
> 1、先月エクセルファイルと今月エクセルファイルからCSVファイルへの出力
> 2、秀丸エディタの起動
> 3、マクロの起動
<中略>
> 1、先月と今月のCSVファイルから差分の抽出>結果ファイルへの書き込み
 これは、「hidesoft.2:08966| cuma」の cuma さんの投稿で始まるスレッ
ドと同じことでは?
 一体鶴亀で何がしたいのでしょうか?

[ ]
RE:04752 比較結果出力マクロって出来ますNo.04757
きいろいまふらあ さん 02/02/18 01:13
 
>今は手作業で以下の手順で住所録の差分チェックしてますが、マクロである程度
>自動化が出来ないかと思うんです。

鶴亀のマクロでExcelのデータを扱うのは「とても」難しいです。
#というか、普通の日本語で書けば「無理」。

百歩譲ってCSVだとしても「かなり」難しいです。
自動化するならExcelで対処すべき問題でしょう。
そっちの方が100倍簡単です。
チェック用の(Excelの)マクロを作ってしまうということですけど。

で、強いて言えば、そのExcelでチェックする作業を、鶴亀のマクロから起動し
てやることくらいは、場合によってはできるかもしれません。

ところで、最初から差分を送ってもらうことはできないんですか?

[ ]
RE:04756 比較結果出力マクロって出来ますNo.04758
cuma さん 02/02/18 08:22
 
ひろさん、いつも本当にありがとうございます。


>> 1、先月と今月のCSVファイルから差分の抽出>結果ファイルへの書き込み
> これは、「hidesoft.2:08966| cuma」の cuma さんの投稿で始まるスレッ
>ドと同じことでは?

ご指摘の通りです。
自分でも変だなあと思いながら昨日投稿しました。
以前のスレッドに付けようか?新規に投稿しようか?と迷いながら検索して出な
かったので新規にしたのですが、会議室を間違えて投稿してしまいました。
鶴亀の会議室に投稿してしまったのですね。

> 一体鶴亀で何がしたいのでしょうか?

そうですよねえ。なんだか分からないですよね。以前と何が変わったのか。

どう書くべきなのか。。。。

まずは、これは今回新規の話にならないので不要ですが、一応再度確認の意味で
必要な出力イメージを書きます。

もちろん見た目の問題は重要では無く、差分が分かればいいのですが。

***差分チェック結果***

  **2月分リストに存在していたが3月分リストから削除された行**
  
    住所   氏名   個数
   東京都  cuma  10
   宮城県  tsuru  5
   
  **3月分リストに新規追加された行**
  
    住所   氏名   個数
   神奈川県 kame  40
   大阪府  inu    5    
   
  **理由不明の入れ替え行**
  
    住所   氏名   個数
   福岡県   me   40
   
  **個数増減の行**

    住所   氏名   個数
   秋田県   na   10−>9  
   
   

#################################   
そして今回、一番の問題と思われる事が入力イメージに含まれているゴミです。
#################################

エクセルファイルは毎回表の中にゴミ(たぶん担当者がメモしたんだと)があり
ます。
これは通常表示で見えない場合(ずっと右端のセルにゴミ)と、見える範囲(備
考欄など)に記入されていたりします。

単純にエクセルファイルをCSV変換して、機械的比較を行うと、途中のゴミ
データ(具体的には「Aエリア」とか「手渡し」とか、全く一貫性の無い言葉)
が抽出されてしまいました。

また、変なゴミデータが入るセル位置は全く一定しておりません。
エクセルで左から3列目にあったり、左から5列目にあったりと言う感じです。

こんな状況なので、このゴミ(エクセル1シートで100ケ以上?)があるため
に、メチャメチャになってしまいます。

ゴミの文字が一定で無く、ゴミをかかれる位置も色々で、これがゴミって単純に
は切り分けが出来ず、結局は手作業での差分チェックが必要となっています。

自分が手作業でゴミか否かを判別しながやっていることを何とかマクロで?と思
ったのですが、書いているうちに無理な気がしてきました。

ゴミは文字が一定せず、記入されるセル位置も決まってないので、機械的にゴミ
か本当のデータかを判別するのは、判定論理に人間が介在しないと無理な気がし
てきました。

せめてセル位置が一定しているならば、縦方向に指定してそのセルをバッサリと
削除してから比較とかあるんでしょうけど、これもゴミ位置からは出来ないよう
です。

自分で書いていて、無理だと感じてきました。

ゴミか否かの判断基準は内容次第と言う事になるとソフト的には無理ですよね。
もう少しゴミ文字の法則性が出てきたら?(出ないみたいですが)、あるいはゴ
ミ文字の投入位置が一定に出来るなら?

もう少し判断論理が出来そうになったら改めてチャレンジ致します。

ひろさん、毎回毎回アドバイスありがとうございます。
今回の質問は掲示板を間違えた上に、実現させるべき事が不明瞭な書き方で失礼
しました。

本質問は、ソフト的に無理と思うので取り下げます。
大変お騒がせしました。そして自分自身の要望をきちんとまとめない状況で要望
を出した事にお詫び致します。掲示板も位置を間違えましたし。

今後ともよろしくお願いします。

[ ]
RE:04757 比較結果出力マクロって出来ますNo.04759
cuma さん 02/02/18 08:29
 
きいろいまふらあさん、おはようございます。

>百歩譲ってCSVだとしても「かなり」難しいです。
>自動化するならExcelで対処すべき問題でしょう。
>そっちの方が100倍簡単です。
>チェック用の(Excelの)マクロを作ってしまうということですけど。

そうですよね。エクセルファイルにはエクセルのマクロでやるべきですよね。
そして更にツリー上で書いたような「ゴミ」が問題となるので、更に無理があっ
たのかもしれません。

>ところで、最初から差分を送ってもらうことはできないんですか?

そうなんです。そうなんです。
実は私も数年前から要望出しているんですが、管理元が無理だと言うんです。管
理元はお客様なので面倒を頼めないし。

ちなみにエクセルファイルで元データは管理されておらず、他のデータベースら
しいのですが、委託先に配布するときにエクセル形式で配布しているようです。
そして差分は全く管理されておらずです。機械上は。

紙の変更連絡書はあるらしいのですが、枚数が膨大で私の関連分だけ抜き出して
欲しい言う事はできないようです。

なお、私以外に要望している人間は数百人中0です。
皆さんパソコンを持ってない人なので、エクセルの印刷された紙の表を見てチェ
ックしているのです。

話がそれて来ました。

ひろさん、きいろいまふらあさん、毎度本当にありがとうございます。

今回の要望は全ての点で間違えてました。失礼しました。

[ ]