Как удалить записи из одного столбца в электронной таблице, если они появляются в другом? - PullRequest
0 голосов
/ 22 декабря 2009

Два столбца: столбец A содержит полный список доступных названий журнала; Столбец B содержит те, на которые моя библиотека уже подписана.

Можно ли удалить записи из столбца A, если они также отображаются в столбце B?

Другими словами, я хочу «согласовать» два столбца, чтобы ни одна запись не была представлена ​​в обоих столбцах.

Любая помощь будет встречена с благодарностью.

Ответы [ 2 ]

1 голос
/ 22 декабря 2009

Вы можете использовать ADO для действий типа базы данных, например:

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
1 голос
/ 22 декабря 2009

Это может ответить на ваш вопрос сравнить два столбца

...