У меня есть две таблицы: vda.xlsx и main.xlsm. На данный момент я сравнив значения:Разделение значения столбца ячейки перед сравнением
колонке main.xlsm J
с
vda.xlsx колонка А
Чтобы увидеть, если есть совпадение. Если совпадение найдено, значение в столбце подсвечивается красным цветом.
Однако формат данных в vda.xlsx column A изменился.
Раньше смотреть, как этот
Теперь он выглядит как этот
Test \ 1234 или Best \ 1234 или Jest \ 1234 - это может быть любым ...
Sp Мне нужно разбить тест \ 1234 на "\ »и выведите 1234 для сравнения.
Любая идея, как я могу это сделать. Это мой код до сих пор:
Sub VDA_Update()
Dim wshT As Worksheet
Dim wbk As Workbook
Dim wshS As Worksheet
Dim r As Long
Dim m As Long
Dim cel As Range
Application.ScreenUpdating = False
Set wshT = ThisWorkbook.Worksheets("Master")
On Error Resume Next
' Check whether vda.xlsx is already open
Set wbk = Workbooks("vda.xlsx")
On Error GoTo 0
If wbk Is Nothing Then
' If not, open it
Set wbk = Workbooks.Open("C:\Working\vda_test.xlsx")
End If
' Set worksheet on vda.xlsx
Set wshS = wbk.Worksheets("imac01")
m = wshT.Cells(wshT.Rows.Count, 1).End(xlUp).Row
' Loop though cells in column J on main.xlsm
For r = 1 To m
' Can we find the value in column C of vda.xlsx?
Set cel = wshS.Columns(1).Find(What:=wshT.Cells(r, 10).Value, _
LookAt:=xlWhole, MatchCase:=False)
If Not cel Is Nothing Then
' If we find a match, then change the text to red
wshT.Cells(r, 10).Font.ColorIndex = 3
End If
Next r
Application.ScreenUpdating = True
End Sub
уточнения пожалуйста, ваш 'main' Учебное пособие содержит' 1234', и ваш 'vda' Учебное пособие содержит данные, такие как' 1234' тест \ и вам нужно определить, находится ли '1234' (из' main' wb) в столбце 'A' книги' vda' (в формате 'test \ 1234')? –
Мне нужно увидеть, можно ли найти '1234' в' test \ 1234' (да, он может), разделив его на массив и извлекая последний элемент в массиве (как видно из нижеприведенного ответа) – theshizy
Это понятно, но какая книга содержит '1234', а какая' test \ 1234'? –