Страницы: 1
RSS
Вставка текста из соседней ячейки
 
Добрый день. Озадачил Ямаркет... У них надо заполнить поля vendor + model, где: 1- в ячейку model надо указать ячейку, в которой будут след. данные: что за товар в принципе(например: "Жесткий диск" ), затем указать наименование vendor/производителя(например: "Seagate" ) , и далее указать номер модели производителя(например: "ST250DM000" ); 2- в ячейку vendor надо указать ячейку с производителем("Seagate" ). В ИТОГЕ: значение ячейки model: Жесткий диск  Seagate ST250DM000, а ячейки vendor: Seagate. К сути... проблема в том, что у нас эта информация в трех разных колонках: 1-наименование - Жесткий диск 250Gb Seagate SATA-III 7200rpm 16Mb 3.5", 2-model - ST250DM000, 3-вендор - Seagate , и для работы нужно объединить колонки 1 и 2 в одну, но так, чтобы модель обязятельно вставала после производителя, вот так: Жесткий диск 250Gb Seagate  ST250DM000  SATA-III 7200rpm 16Mb 3.5". Плюс задача усложняется тем, что некоторые Наименования товаров уже нужного вида, поэтому перед выполнением вставки Модели в Наименование, надо проверить, есть ли в Наименовании значение ячейки из колонки model. Во вложенном файле пример того, что требуется сделать. Прошу помощи в написании формулы. Думаю в дальнейшем она очень многим пригодится. Заранее спасибо всем откликнувшимся.
 
Цитата
archi пишет:
Думаю в дальнейшем она очень многим пригодится.
ага. во всём мире. 8)
и раз мир в опасности....
вставить в D2 и протянуть

Код
=СЖПРОБЕЛЫ(ЕСЛИ(ИЛИ(ЕОШИБКА(ПОИСК(A2;B2));СЖПРОБЕЛЫ(A2)=""  ;)  ;ЕСЛИ(ИЛИ(СЖПРОБЕЛЫ(C2)="";ЕОШИБКА(ПОИСК(C2;B2)));B2&" ("&  ЕСЛИ(И(СЖПРОБЕЛЫ(C2)<>"";  ЕОШИБКА(ПОИСК(C2;  B2)) ); C2 & " - " & A2;A2)  &"  ;)  ";ПСТР(B2;1;ПОИСК(C2;B2)-1)&" "&C2&" "&A2&" "&ПСТР(B2;ПОИСК(C2;B2);ДЛСТР(B2)));D2))
Изменено: Jack - 21.05.2014 18:02:17
 
Код
=ЕСЛИ(C2=" ";B2&" ("&A2&")";ЕСЛИ(ЕОШ(ПОИСК(C2;B2));B2&" ("&C2&" - "&A2&")";ЕСЛИ(ЕОШ(ПОИСК(A2;B2));ПОДСТАВИТЬ(B2;C2;C2&" "&A2);B2))) 
 
Jack, убрал лишний пробел и точку запятой

Код
=СЖПРОБЕЛЫ(ЕСЛИ(ИЛИ(ЕОШИБКА(ПОИСК(A2;B2));СЖПРОБЕЛЫ(A2)="";);ЕСЛИ(ИЛИ(СЖПРОБЕЛЫ(C2)="";ЕОШИБКА(ПОИСК(C2;B2)));B2&" ("&ЕСЛИ(И(СЖПРОБЕЛЫ(C2)<>"";ЕОШИБКА(ПОИСК(C2;B2)) ); C2 & " - " & A2;A2)&")";ПСТР(B2;1;ПОИСК(C2;B2)-1)&" "&C2&" "&A2&" "&ПСТР(B2;ПОИСК(C2;B2);ДЛСТР(B2)));D2))
Изменено: Александр Сергеевич - 21.05.2014 18:37:04
не нужно оскорблять.
 
Цитата
Александр Сергеевич пишет:
убрал лишний пробел и точку запятой
всё может быть :)
 
Огромное спасибо за оперативность всем откликнувшимся! :)
 
прошу снова помощи... обозначила себя ещё одна проблема, на которую изначально не обратили внмание. Бывает артикул  из колонки model содержит в себе дополнительные символы, типа слешей, тире, подчеркиваний, либо просто содержит пробел. При этом артикул указан в наименовании, но уже без этих символов и пробелов. Или же, всё с точностью до наоборот. Вобщем ниже постарался привести пример:
----
до применения формулы

Артикул                          Наименование
TK330                            Картридж Kyocera FS4000DN type TK-330 20000 стр. (o)
TK-55                             Картридж Kyocera FS1920 type TK55 15000 стр. (o)                         <- обратная ситуация
---
после применения формулы

Артикул                          Наименование
TK330                            Картридж Kyocera TK330 FS4000DN type TK-330 20000 стр. (o)
TK-55                             Картридж Kyocera TK-55 FS1920 type TK55 15000 стр. (o)             <- обратная ситуация
---
подскажите плиз, вариант решения проблемы, желательно с формулой от V :

Цитата
V пишет:
=ЕСЛИ(C2=" ";B2&" ("&A2&"  ;)  ";ЕСЛИ(ЕОШ(ПОИСК(C2;B2));B2&" ("&C2&" - "&A2&"  ;)  ";ЕСЛИ(ЕОШ(ПОИСК(A2;B2));ПОДСТАВИТЬ(B2;C2;C2&" "&A2);B2)))
так как, остальные не много не корректно работают, вот так выглядит результат от
Цитата
Александр Сергеевич пишет:
=СЖПРОБЕЛЫ(ЕСЛИ(ИЛИ(ЕОШИБКА(ПОИСК(A2;B2));СЖПРОБЕЛЫ(A2)="" ;) ;ЕСЛИ(ИЛИ(СЖПРОБЕЛЫ(C2)="";ЕОШИБКА(ПОИСК(C2;B2)));B2&" ("&ЕСЛИ(И(СЖПРОБЕЛЫ(C2)<>"";ЕОШИБКА(ПОИСК(C2;B2)) ); C2 & " - " & A2;A2)&" ;) ";ПСТР(B2;1;ПОИСК(C2;B2)-1)&" "&C2&" "&A2&" "&ПСТР(B2;ПОИСК(C2;B2);ДЛСТР(B2)));D2))
Жесткий диск 250Gb Seagate ST250DM000 Seagate SATA-III 7200rpm 16Mb 3.5"
Жесткий диск 1Tb Seagate ST1000NM0033 Seagate SATA-III Constellation ES.3 7200 rpm 128Mb
Жесткий диск 1Tb Seagate ST1000DX001 Seagate SATA-III 7200rpm 64Mb 3.5"
Жесткий диск 250Gb Seagate ST250DM000 Seagate SATA-III 7200rpm 16Mb 3.5"
Жесткий диск 250Gb Seagate ST250DM000 Seagate SATA-III 7200rpm 16Mb 3.5"
Жесткий диск 3Tb Seagate Seagate SATA-III 7200rpm 64Mb 3.5"
Жесткий диск 4Tb Seagate Seagate SATA-III Desktop SSHD (7200rpm) 64Mb 3.5"
Жесткий диск 1Tb Seagate SATA-III 7200rpm 64Mb 3.5" (ST1000DM003)
Жесткий диск 1Tb Seagate SATA-III 7200rpm 64Mb 3.5" (ST1000VX000)
Жесткий диск 2Tb SATA-III 7200rpm 64Mb 3.5" (Seagate - ST2000DM001)
Жесткий диск 2Tb SATA-III 7200rpm 64Mb 3.5" (Seagate - ST2000NC001)
 
замените часть формулы, где проверяется наличие артикула

Код
ПОДСТАВИТЬ(ячейка_с_артикулом;"-";"")
Изменено: Jack - 22.05.2014 16:34:13
 
Цитата
archi пишет:
model содержит в себе дополнительные символы, типа слешей, тире, подчеркиваний, либо просто содержит пробел
проверка всех этих символов значительно усложнит формулу, так что я думаю проще будет попросить знатоков VBA написать макрос.
archi прячьте длинный текст под спойлер.
Изменено: V - 22.05.2014 16:53:47
 
Цитата
Jack пишет:
замените часть формулы, где проверяется наличие артикула
Код
 ПОДСТАВИТЬ(ячейка_с_артикулом;"-";"") 


Изменено: Jack - 22 Май 2014 16:34:13
буду признателен за конкретику - где эта часть формулы?
---
Цитата
V пишет:
Цитата
archi пишет:
model содержит в себе дополнительные символы, типа слешей, тире, подчеркиваний, либо просто содержит пробел
проверка всех этих символов значительно усложнит формулу, так что я думаю проще будет попросить знатоков VBA написать макрос.
archi прячьте длинный текст под спойлер.

Изменено: V - 22 Май 2014 16:53:47
формулу надо применить всего один раз - готовы подождать, и думаю проще уже здесь закончить, нежели по новой тему создавать, когда проблема почти решена  
 
archi, исправляйте свои сообщения!
О чрезмерном цитировании - в правилах.
 
Сообщение с помощью скрыто
Страницы: 1
Наверх