• 締切済み

重複チェック&削除

現在、エクセル2003VBAでデータを抽出するファイルの「ファイル名」とそのファイルの中の様々な複数の項目を抽出し、データベースを作っています。(その「ファイル名」VBAで抽出して、データベース上にその「ファイル名」も入るようにしています) ここで質問なのですが、そのデータベースに新たなデータを投入する「前」に、既に投入済みデータと重複しないように、重複チェックと重複削除をエクセルVBAでしたいのですが、どのように組んだらいいのでしょうか? 「ファイル名」で重複しているか判断したいと思います。(既に投入済みのデータのファイル名はリスト化しています) よろしくお願いします。

みんなの回答

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

質問がごたごたした表現でわかりにくい。 ファイル(元ファイル、抽出後集積するファイル) ファイル名のリスト 抽出して投入した(する)データ があるらしいが、 質問はファイル名のリストだけの問題ではないのか?。 具体例(ブック、シート、セルの列と行)でも作って、質問に書く(補足する)こと。 >データのファイル名はリスト化しています・・ であればIF文を使って、追加しようとするファイル名でとリスト全セルを比較して、該当があるか聞いていけば済むことではないのか?

maintec
質問者

お礼

回答ありがとうございます。 質問が不十分で申し訳ありません。 一度整理してみます。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

ファイル名の重複チェックはわかりますが、重複削除とは? どこから何を削除するのでしょうか?(その基準は?) ファイル名をリスト化していますだと不明確なのでは?

maintec
質問者

お礼

回答ありがとうございます。 質問が不十分で申し訳ありません。 一度整理してみます。

関連するQ&A

  • 重複 があれば削除して1つに

    http://oshiete1.goo.ne.jp/qa4510771.html の族編です。 エクセルの1列の縦長いデータを抽出して 1行の横長いカンマ区切りのテキストにしたいのですが、 エクセルの縦1列をコピペでワードにテキストで貼り付け そこから改行を置き換え削除で横並び1列になったのですが 重複する文字が複数あったので、重複分を削除して1つだけに残したいのです。 エクセルデータは変更してはいけないので、コピーしかできません。別のエクセルにならコピーしてもかまいません。 手作業では大変な作業ですので、簡単で単純な方法を教えて下さい。 ********************************** aaa  ← エクセルの縦列のデータ bbb  ← ccc aaa ddd bbb ↓ aaa,bbb,ccc,ddd こんな風に重複分だけ削除して1行カンマテキストにしたいのです。 <(_ _)>

  • Excelの重複データーを削除したい

    Excel 2010 の A列 に複数のデーターがあります。これをExcelの機能で昇順に並べ替えます。 重複したデーターが有れば削除し、ブランク行のない状態にするため VBA で処理していますが、この作業を簡単に行える良い方法が有れば教えてください。

  • 重複するディレクトリを検索して削除

    複数のHDDから重複するディレクトリを検索して削除出来るアプリはありませんか? 重複するファイルでは無く、ディレクトリが対象です。 文献ファイルを複数のHDDに保存していますが、  同じディレクトリ名のフォルダーが複数あるようで整理(削除)が必要です。 重複ファイルを検索して削除するのでは項目が多くて時間が必要で   フォルダー毎の削除の方が効率が良くなります。 ディレクトリの重複検索については、フォルダー名とサイズが同一を基本とします。

  • EXELシート の重複(ダブり)チェック方法

    こんにちわ。 初歩的なことですいませんが、EXELの重複チェック方法について教えてください・・ 会社名、電話番号データ等を入力したEXELファイルが二つ(仮にA,B)あるのですが、 そのA,Bのファイルで、重複(ダブっている)会社名を削除したいんです。 そこで、ダブっている会社名を簡単に検索できる方法というのはあるのでしょうか? 例えば、Aのデータ(会社名)をBに入力するとダブっている、会社名が表示されるとか・・ 同一シート内での重複チェックの方法などは分かるのですが、ファイルが分かれてい てもダブりをチェックする方法はあるのでしょうか? ちなみに、一つのファイルに複数のシートを作成して、それであればダブりがチェック できる方法がある・・というのでも大丈夫です、 EXEL初心者なもので、そもそもうまく質問の意図が伝わっているかどか不安なのですが。。 ご回答おまちしております。

  • エクセルの重複削除について

    エクセルで、(1)と(2)というシートがあり、それぞれにリストがあるとします。 (1)と(2)のリストを統合し、(1)にあるデータを優先として残し、重複削除したいと考えます。 その場合、どのようにしたら(1)を優先にすることができるのでしょうか? お分かりの方、お教え下さい。よろしくお願いいたします。

  • Excel重複データ削除について

    Excelで重複したデータを削除しようと思い、データが入っている範囲を選択して フィルターオプションで「重複レコードは無視する」にチェックを入れて実行しても、何も起こりません・・・ 今まで何度か使ったこともあるし、できなかったことはなかったのですが、今回は同じに見えるデータなのにExcelが同じと判断してくれていないようです。Exactなどの関数も使ってみましたがダメでした。 今までと違うとしたら、CSVから値のみコピーしてExcelに貼り付けたデータ、というくらいしか思い当たらないのですが・・・ これが原因なのでしょうか? よろしくお願い致します。

  • エクセルで重複のチェックをしたい

    初心者なので、拙い内容ですが教えてください。 ・エクセル2003 二つのシートにそれぞれA列に企業名、B列に支店名、 C列に郵便番号、D列に住所が入力されています。 二つのシートはほぼ同じ内容で、シート1は3000件の全データ、 シート2は抽出された1300件のデータが入力されています。 やりたいことは3000件のうちの1300件の重複データを シート1の全データの空白列に「重複」や  重複データには行に色をつけて表示させる、などとにかく 重複をわかりやすく表示させたいのです。 過去ログみましたが、いまいち理解できませんでしたので わかりやすく教示してくださると助かります! ちなみに二つのデータをひとつにし、フィルタオプションの 「重複するレコードは・・」は検討違いだったようでうまくいきませんでした・・ ひとつの列に対する重複チェックは理解できたのですが.. 支店によって住所が違ってくるので、たちどまってしまいました。

  • エクセルに貼った重複したデータの1つを削除する法

    エクセルに貼った重複したデータの片方を削除する法 エクセルに、お店の名前をたくさんはりつけてリストを作ったんですが、 かなりの数のURLが重複しています。 重複したものの片方をまとめて削除したいのですが、どのようにすれば いいでしょうか?

  • VBA教えてください。重複データの削除

    エクセルからエクセルへのデータ取り込み、重複データ削除の方法について、とても時間がかかっており、ご教授いただきたいと思い、質問させていただきます。 よろしくお願い致します。 台帳(エクセル)とシステムから出力するcsvファイル(エクセル)があります。 csvファイル(エクセル)のデータを、台帳(エクセル)で管理します。 ‘csvファイル:商品コード、商品名、注文日、納期、などなどA~AZ列まで、1行目は項目名で、その後、1行1商品で2000行ほどデータがあります。 現在進行形のデータが全て出力されるため、台帳にあるデータと重複するものと、新規データがあり、新規データのみを台帳に追加していきたいです。 重複かどうかの判断は、A列の通し番号で判断しています。 台帳:シート4つで進捗を管理しています。 シート(1);csvファイルからデータを取り込むシート      一度出力データ全てを取り込み(※1)、シート(2)、(3)に重複があるデータを削除します(※2)。 シート(2):(1)から次工程にデータを送ったらこちらに移動(0~500行ほどあります) シート(3):(2)から次工程にデータを送ったらこちらに移動(5000行ほどあります) ※1は3秒ほどで完了するのですが、※2は1分近く時間を要しています。 もう少し短くならないかと思うのですが、いかがでしょうか。よろしくお願い致します。早ければ早いほどいいですが、10秒以内を目標にしています。 今は、csvファイルから全データをエクセルに取り込んでから(3秒ほど)、重複削除していますが、csvファイルから取り込むときに、重複データを取り込まないほうがいいのでしょうか。 現状、このような感じです。 Sub 重複削除() Dim i As Long Application.ScreenUpdating = False Application.Calculation = xlCalculationManual ‘BA列にある重複チェックが2以上のとき、削除 For i = 5000 To 5 Step -1  If Worksheets("(1)").Cells(i, 53).Value > 1 Then Rows(i).Delete End If Next i ‘BA列に重複チェックを再設定 Application.Calculation = xlCalculationAutomatic Cells(5, 1).Select Range("BA5") = "IF(A5="""","""",COUNTIF($A$4:$A5,A5)+COUNTIF((2)!$A:$A,A5)+COUNTIF((3)!$A:$A,A5))" Range("BA5").Select Selection.Copy ‘関数を値へ変換 Range("BA6:BA2000").Select ActiveSheet.Paste Application.CutCopyMode = False ‘行幅を整える Rows("5:5").Select Range(Selection, Selection.End(xlDown)).Select Selection.RowHeight = 15.75 Range("A5").Select Application.ScreenUpdating = True '画面描画を静止 End Sub

  • 重複チェックである値はチェックしない方法

    エクセルの重複データを以下関数でチェックしています。 =IF(COUNTIF(A:A,A2)>1,”重複”,””) 例えばA列に○が複数入力されていた場合、○も重複としてみなされます。 これをカウントしないためには、どうすればいいかわかりますか? 複数条件で○を省くことができれば可能ですか?

専門家に質問してみよう