Изменено из-за комментариев.

У меня есть список немецких слов, и я хочу отсеять изогнутые формы. Слова в алфавитном порядке. Например:

  • ähnlich
  • ähnliche
  • Ahnung

Итак, рядом с анлихом я хотел бы видеть 1, так как это только 1 буква, отличная от анлихе, но 3 рядом с анлихе, потому что у него есть 3 буквы, не найденные в этом порядке в анхунге.

Я знаю, что есть слова, которые отличаются только на 1 букву и означают совершенно не связанные вещи, мне нужна только помощь от Excel, я знаю, что она не может решить ее самостоятельно.

1 ответ1

0

Если я понимаю, что вы спрашиваете (и это очень большое «ЕСЛИ»), вы хотите что-то вроде этого:

=IF(LEFT(A1,9)=LEFT(A2,9), LEN(A2)-9,
 IF(LEFT(A1,8)=LEFT(A2,8), LEN(A2)-8,
 IF(LEFT(A1,7)=LEFT(A2,7), LEN(A2)-7,
 IF(LEFT(A1,6)=LEFT(A2,6), LEN(A2)-6,
 IF(LEFT(A1,5)=LEFT(A2,5), LEN(A2)-5,
 IF(LEFT(A1,4)=LEFT(A2,4), LEN(A2)-4,
 IF(LEFT(A1,3)=LEFT(A2,3), LEN(A2)-3,
 IF(LEFT(A1,2)=LEFT(A2,2), LEN(A2)-2,
 IF(LEFT(A1,1)=LEFT(A2,1), LEN(A2)-1,
 LEN(A2) )))))))))

Другими словами, найдите самую длинную общую начальную подстроку A1 и A2 , а затем верните, сколько символов A2 имеет помимо этого.  Это было бы ужасным препятствием, если бы это работало, и это не так, потому что Excel не позволяет вам так глубоко вкладываться, и вам нужно будет подняться до ... что, 42?  Я знаю, что некоторые немецкие слова очень длинные.  (Я протестировал приведенную выше формулу, удалив первые две строки и начав с 7 )  Это явно то, что должно быть сделано в VBA, и мне было бы сложно написать это, поэтому я попрошу остальное сообщество SU дать ответ VBA.  (Или, Андраш, если это не то, что вы хотите, объясните, что вы хотите, более четко.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .