问题
Two columns: Column A contains a complete list of available journal titles; Column B contains the ones to which my library already subscribes.
Is it possible to delete entries from Column A if they also appear in Column B?
In other words, I want to 'dovetail' two columns so that no entry is represented in both columns.
回答1:
You can use ADO for database-type actions, for example:
Dim cn As Object
Dim rs As Object
Dim strFile As String
Dim strCon As String
Dim strSQL As String
Dim i As Integer
''http://support.microsoft.com/kb/246335
strFile = ActiveWorkbook.FullName
''Note HDR=No, so F1,F2 etc is used for column names
''If HDR=Yes, the names in the first row of the range
''can be used.
strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strFile _
& ";Extended Properties=""Excel 8.0;HDR=No;IMEX=1"";"
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
cn.Open strCon
strSQL = "SELECT F1 FROM [Sheet9$] WHERE F2 Is Null OR UCase(F2)<>UCase(F1)"
rs.Open strSQL, cn, 3, 3
Worksheets("Sheet10").Cells(2, 1).CopyFromRecordset rs
回答2:
This may answer your question compare two columns
来源:https://stackoverflow.com/questions/1945776/how-do-i-delete-entries-from-one-column-if-they-appear-in-another