Формула Excel сравнить две строки - PullRequest
0 голосов
/ 06 мая 2018

screen shot of formula click here

Мне нужно сравнить продукт из файла транзакции с продуктом в таблице поиска. Значения кажутся равными, но не оцениваются как равные. Пробовал разные подходы в VBA (StrComp, CStr, Trim (), добавление буквы в начало и конец строк для сравнения) и формулах Excel, чтобы попытаться решить эту проблему.

На фото Ячейка C4 была скопирована из рабочей книги транзакций, а ячейка D4 была скопирована из рабочей книги поиска. Формула оценивает в Ложь. Если я просто ввожу это строковое значение в две разные ячейки и применяю формулу, оно оценивается как True, но когда я копирую две ячейки из других рабочих книг (рабочей таблицы транзакций и рабочей таблицы), формула оценивается как false.

Есть идеи?

Формула Excel: =IF(TRIM(UPPER(C4))=TRIM(UPPER(D4)),TRUE, FALSE)

A5314A A5314A

1 Ответ

0 голосов
/ 06 мая 2018

В Excel, используя функцию CLEAN, как предложил Крис Нейлсен, был ответ:

=IF(TRIM(UPPER(CLEAN(C4)))=TRIM(UPPER(CLEAN(D4))),TRUE, FALSE)

Как Сэм предложил в VBA, использование этой функции также работало, а метод StrComp оценивался в 0:

a = "A" & Application.WorksheetFunction.Clean(Trim(CStr(Sheet1.Cells(i, 1).Value2))) & "A"`
b = "A" & Application.WorksheetFunction.Clean(Trim(CStr(Sheet2.Cells(i2, 1).Value2))) & "A"
If StrComp(a, b) = 0 Then
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...