• 締切済み

ExcelデータとAccessデータとの件数比較

【 問題となっていること 】 Excelのデータが元データですが、これをAccessで取り込む際にデータの件数が変わってしまうことがありました。 この誤差がちょっとした問題になってます。 【 聞きたいこと 】 元のExcelのデータの件数をカウントし、さらに取り込んだ先のAccessのデータの件数をカウントしたい。 何かいい方法はありませんでしょうか? 【 注意点 】 ・Excelのデータは変更できない。したがって、csvやtextなどに出力して・・・という方法が使えません。 ・データの件数は10数件の時もあれば膨大な件数(Excelで読める範囲)になることもあります。 何だかテンパってて情報が足りなかったりしたらすみません。 どなたかこんなワガママな状態のデータの件数をカウントする方法をご存知でしたら、お知恵を貸してください。 よろしくお願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

エクセルもアクセスも内容の表示性と言うことでは、ほぼ完璧なソフトです。プログラムを組んだり別ソフトなしで内容が見られます。なのにアクセスと件数が違うなんて理由がわからないなんて信じられない。 両者見くらべれば、原因について、何か感想を持つでしょう。 エクセルはデータベースと言っているのは、第1行が項目見出しで2行目からが明細で、最終行数-1がレコード数でしょう。 (1)間に空白行があるのかそれをレコードとしてカウント(アクセスへ引き渡し)したいのか (2)コメント的な行はないのか (3)アクセスへ引き渡したのは、インポートか独自の プログラムか。独自のプログラムなら(2)など飛ばすなど何とでもなります。 もしインポートなどなら、そこからエクセルへ戻して、元のエクセルと、両者比べれば。 >・Excelのデータは変更できない。したがって、csvやtextなどに出力して・・・という方法が使えません テキスト形式ファイルに出力してもExcelデータはなんの影響もありません。「使えませんとは?」原因究明のためぐらいには使ったらと思いますが。 (4)いつも少数件数食い違うのか。食い違ったり食い違わなかったりするのか。 (5)なにか特徴らしきものが心当たりないのか。 プログラムミスの追及なども、この点の発見能力を磨くことにあります。 OKWEBは謎解きの場ではないのだから、質問者は出来るだけ、それらしいという情報でも上げないと、回答者の能力とは別に、適切な回答が出せないと思う。

yukiha123
質問者

補足

imogasiさん、ありがとうございます。 > 第1行が項目見出しで2行目からが明細で、 Excelの件数はもちろん見出しの行は除いてカウントしております。 (1)間に空白行があるのかそれをレコードとしてカウント(アクセスへ引き渡し)したいのか 空白行はありません。 (2)コメント的な行はないのか これもありません。 (3)アクセスへ引き渡したのは、インポートか独自の プログラムか。 独自のプログラムで動かしているようです。しかし、プログラムのソースはわたしでは見ることが出来ません。 > テキスト形式ファイルに出力してもExcelデータはなんの影響もありません。「使えませんとは?」 ためしにバックアップを取った状態でテキスト形式やcsv形式で出力して試してみました。やはりどの形式に変換してもデータの件数は合いませんでした。 元のExcelとcsv、textでは件数は同じですが、Accessに取り込んだ時点で件数が変わってしまっています。 特に空白や改行などもなく、他のきちんと取り込まれるデータと同じように見えます。 (4)いつも少数件数食い違うのか。食い違ったり食い違わなかったりするのか。 今回1件のみ食い違いました。普段は食い違いの起きたことはありませんでした。 (5)なにか特徴らしきものが心当たりないのか。 色々試行錯誤してみましたが、同じ情報を手入力した場合にはキチンとカウントされることがわかりました。 しかし、該当するデータそのものをコピペした場合はカウントされませんでした。 おそらくデータそのものがおかしいのではないか、というところまでは断定できましたが、入力するのは多数の方になるので、入力した方を特定することができませんでした。 言葉足らずで申し訳ありませんでした。 > OKWEBは謎解きの場ではないのだから、 厳しいご意見ありがとうございます。 肝に銘じて今後の参考にさせていただきたいと思います。 お忙しい中、ご意見いただきましてありがとうございました。 もうしばらく試行錯誤してみたいと思います。

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.2

元のExcelをテーブルにリンクすれば良いのでは。 リンクした元のExcelのレコードをカウントし取り込んだレコードの件数もカウントし比較すれば良いと思いますが。 どういう環境かはわかりませんがAccessのテーブルに元のExcelをリンクしそのままテーブルとして使えば問題ないのではと思いますが。

yukiha123
質問者

お礼

O_cyanさん、ありがとうございます。 > 元のExcelをテーブルにリンクすれば良いのでは。 Accessから元のExcelをテーブルにリンクさせてみる方法も試してみましたが、結果は同じでした。 やはりカウントすると取り込む前と取り込んだあとの件数は変わってしまいます。 解決にはなりませんでしたが、ヒントをいただけて助かりました。 どうもありがとうございました。

  • popesyu
  • ベストアンサー率36% (1782/4883)
回答No.1

>データの件数が変わってしまう ということであれば、DAOなりでRecordSetを使って取り込み作業を行っているということなんでしょうかね? ということであれば何らかのエラー処理でわざと弾いているのではないかと思えるのですが。それが仕様なのかバグなのかは分かりませんが開発した人に確認を取るのが一番かと。 それ以外の事情では「データの件数が変わってしまう」ということが起きるはずはなく、まぁ操作ミスとかなら考えられますが、システムの想定が全く付かないのでも少し具体的な情報がほしいです。 そもそもどんなアプリなのか、言語は何、自作されたものなのかとか。 単純にカウントするだけならWSHでも両方のデータの件数ぐらいは数えられますけども、実際にしたいのはそのアプリ上での話なんですよね?

yukiha123
質問者

お礼

popesyuさん、ありがとうございます。 > DAOなりでRecordSetを使って取り込み作業を行っているということなんでしょうかね? そうです。まさにその通りです。 > そもそもどんなアプリなのか、言語は何、自作されたものなのかとか 動かしているアプリは独自のアプリケーションで開発言語は C++ というところまでは探り当てました。 わたしが初心者でいきなり担当にされ、まだシステムそのものも理解できないうちに起きた事象だったために混乱して必要な情報も何もなくて、大変すみませんでした。 Excelのデータは色々な複数の方々が報告を入力されてきます。 入力の大元はExcelで入力され、メールに添付されてこちらにやってきます。 これを自動的に1つのExcelファイルにまとめられるプログラムが組まれていて定時になるとAccessに取り込む、というものだそうです。 複数の人が入力してこちらに送られてきますが、その入力されるデータそのものに異常があることも否定できない状況です。 > 開発した人に確認を取るのが一番かと。 開発した方に連絡取る方法を模索しています。 すでに現在このシステムを使用していた会社は吸収合併され、作った方は外部の方、しかも退職されて現在どこにいるかわからないという・・・何とも困った状況です。 とりあえず、そちらから何らかの情報を得て頑張ってみようと思います。 情報も何もなくとんちんかんな質問にレスいただけただけでも幸いです。 ありがとうございました。

関連するQ&A

  • 修正したデータの件数を知りたい。

    アクセス2000、エクセル2000で作成したデータがあります。 どちらのソフトでもいいのですが、修正したデータの件数を調べる方法はありますか。 入力したデータと、修正して元データをなおしたデータとを比べてどこかが修正してあったら、カウント1としていきたいのです。 データは約8万件あるため、目で見るには限界があります。 データの項目は16項目です。

  • ACCESSデータのEXCEL出力

    ACCESSのテーブルデータをEXCEL97に出力する場合、件数の制限がありますか?また、この件について詳しく説明しているようなURLがあれば教えてください。

  • ACCESSでエクスポートの件数をカウントするには

    こんにちはBOLTSです。 今日は皆様のお知恵を拝借したくて書かせて頂きました。 現在ACCESS2000を使用しています。テキストファイルにデータをエクスポートしたのですが、エクスポートした件数をカウントしたいのです。 例えばエクスポートすべきデータを予めカウントしておいて変数Aに入れておきます。次にデータをエクスポートして エクスポートできた件数を変数Bに入れます。 この変数Aと変数Bを比較して=であればエクスポート完了のメッセージを表示したいのです。 まあ要はエクスポートが確実に完了したかどうかの確認が欲しいわけです。 何かいい知恵ありませんでしょうか? よろしくお願いします。

  • ExcelやAccessで統計したいです

    私はExcel初心者で、VBAは使用したことがありません。またAccessはまったく使用したことがありません。 以下のことがExcelやAccessでは可能なのかおわかりの方、お返事いただけたらと思います。 現在、Excelで競艇の予想と結果の過去のデータを集計したり統計をとったりして検証しています。 データは手作業で入力しているのですが、競艇は1日に1場で12Rあり、全国で20場近く開催されているので年間のデータは膨大でとても手作業では対応しきれません。 データは「予想」と「結果」があります。1日分の「予想ファイル(CSV)」と「結果ファイル(TEXT)」があり、これが1年分あるのでファイル数は数千あります。 これらの膨大なファイルをExcelやAccessに取り込むというのは自動でできるのでしょうか? 私は現在はTEXTやCSVをコピー&ペーストなどで手作業で入力しているので非常にたいへんなのです。 Accessは使用したことがなく、このようなことが可能なのかもわかりません。 毎日増えていく予想・結果データをExcelかAccessに取り込んで集計データが更新されるようにしたいと思いますが、このようなことはExcelやAccessで可能でしょうか? Windows2000とExcel2000:Access2000を持っています。

  • エクセルとアクセスのデータ比較(VB6.0)

    エクセルとアクセスのデータ比較ツール(VB6.0) 質問者:SSCSC アクセスからエクセルにコピペされたレコードがあるとします。 そのエクセルのレコードのあるフィールド値を変更します。(このとき、アクセスもエクセルと同様に変更します。) 上記は手作業でします。 そこで、そのエクセルのレコードがアクセスに存在するかどうかをプログラムで作成したいと思っております。 要するにエクセルとアクセスのデータ比較をして、一致していないレコードがエクセルに存在した場合は、ログを出力したいと思っています。 アクセスのデータが比較基準になります。 何か簡単にできる方法はないでしょうか。 今思いついている方法は、 エクセルの1行目はコピペ時にアクセスのフィールド名がコピーされているので、 エクセル、アクセス両方のフィールド値を全て比較対象にしてSQL文で存在するかどうかを確認する方法です。 ご回答よろしくお願い致します。

  • アクセスからエクセルへのデータ出力で困っています

    アクセスデータをエクセルの形で出力させているのですが、エクセル出力をするとデータのところどころが抜けて何も入っていない状態になります。アクセスで見るとちゃんとデータは入っています。どのようにすればもれなくデータのエクセル出力が出来るのでしょうか?

  • EXCELデータからACCESSデータの更新

    ある一定期間で送られてくるエクセルベースのデータをアクセスのデータへ更新をかけたいのですが何かよい方法は無いでしょうか? エクセルのデータは二つで毎日データ更新がされて週に一回くらい送られてきます。アクセスのデータベースも同じように変更をおこなってる部分もあるので一括インポートも難しいです。 アクセスデータをエクセルに出力の上MATCHを行い更新された部分を探して更新すればいいのですがあまりにも量が多いものですから何かいい方法は無いでしょうか?

  • AccessのデータをExcelに簡単出力するソフトまたは方法

    AccessのデータをExcelに簡単出力するソフトまたは方法を知りませんか? ExcelのセルにAccessの選択したデータを簡単出力できるソフトまたは方法を探しています。

  • Excelのデータを指定件数おきに表示させる方法について

    Excelで60000件の数値データについて、100件おきの移動平均を出力してグラフ化したいのですが、移動平均を表示するところまでうまくいったのですが、100件、200件と、指定件数おきの移動平均値のみを出力する方法がわかりません。

  • AccessからExcelファイルのデータ取得

    Access2000かExcelファイルのデータを取得したいのですが、 Excelファイルを一度 CSVファイルに変換し、その後Accessのテーブルへデータ取り込み といった手順をとりたいのです。 この方法って、どうコーディングすればいいのですか? (Accessのインポート処理は使用しない方法です)

専門家に質問してみよう