私はこのシートを2週間オンオフしています。私は完璧に近づいたような気がします。それは私の顧客がしたいすべてをします。私の新しい闘いは、それが私が顧客の実際のデータを入力するときです。最初のフィルタリングの後には、約30,000行と14個の列があります。マッチを探したり、比較したり、置き換えたりする私の方法では、あまりにも多くのことしかしません。私がやっていることはかなり明白です。最初の列で一致するものを検索し、隣接するセルを比較します。違いがある場合は、マスターセルデータをコメントに移動し、更新データをマスターセルに移動します。相違点の比較、比較、置き換え方法
私は間違っていません。私は自分自身をかなり誇りに思っていた。しかし、データを比較することは、私が持っている方法を少しオーバーロードしています。
Sub Compare_Function_MatchEval()
Call Set_Variables
UpdateSheet.Activate
For w = 5 To UpdateSheet.UsedRange.Rows.Count
v = 1
CellVal = UpdateSheet.Cells(w, 1).Value
MasterSheet.Activate
z = Application.WorksheetFunction.Match(CellVal, Range(Cells(1, 1), Cells((Rows.Count), 1)), 0)
For y = 2 To UpdateSheet.UsedRange.Columns.Count
v = v + 1
If Not UpdateSheet.Cells(w, v) = MasterSheet.Cells(z, v) Then
OldData = MasterSheet.Cells(z, v)
NewData = UpdateSheet.Cells(w, v)
MasterSheet.Cells(z, v).AddComment
MasterSheet.Cells(z, v).Comment.Text Text:=OldData
MasterSheet.Cells(z, v).Comment.Visible = False
MasterSheet.Cells(z, v) = NewData
End If
Next
Next
wbMaster.Application.ScreenUpdating = True
wbMaster.Application.Calculation = xlCalculationAutomatic
End Sub
これはVB.NETコードではありません。タグを削除してください。 – Plutonix
324現在実行する秒数:-( – Flibertyjibbet
最初の 'WorksheetFunction.Match'呼び出しの目的は何ですか?あなたは結果を' x'に入れますが、どこで使うのか分かりません。 – Joffan