1

VBscript で作成された Excel 列で重複を見つけるのに問題があります。

私は現在、DBからデータを取得してExcelファイルを開き、データを配置してから、データを列Eでアルファベット順に昇順に並べ替えています(これが必要ない場合は、簡単に削除できます)。

今私が直面している問題は、その列 E (エラー) 内で重複を見つけようとしていることです。

重複がある場合は、重複をコピーして、作成した別のシート(列 A)に貼り付けたい

Set oWS7 = oWB.Worksheets(7)
oWB.Sheets(7).Name = "Dups" 

そして、 oWS7 の列 Bには、元のワークシートから対応するすべての列 C (アカウント)を入れたいと思います。

そのため、多くのアカウントの比率に対して1 エラーが発生します。重複がない場合は、そのままにしておきたいと思います。これがどれほど明確かはわかりませんが、これに関する質問/ヘルプは大歓迎です。前もって感謝します。

4

2 に答える 2

1

私は次の仮定をするつもりです:

  • ワークシートのコンテンツは最初の行から始まります
  • 最初の行 (および最初の行のみ) はヘッダー行です。
  • ヘッダー行とデータ行の間に空行はありません。
  • データはすでにソートされています。

これらの仮定が適用される場合、次のように動作するはずです (正しいシート番号を入力すると)。

Set data = oWB.Sheets(...)  '<-- insert correct sheet number here

j = 1
For i = 3 To data.UsedRange.Rows.Count
  If data.Cells(i, 5).Value = data.Cells(i-1, 5).Value Then
    oWS7.Cells(j, 1).Value = data.Cells(i, 5).Value
    oWS7.Cells(j, 2).Value = data.Cells(i, 3).Value
    j = j + 1
  End If
Next
于 2013-07-18T22:28:57.353 に答える