Добрый день, планета Excel!
Помогите в решении задачи (пример во вложении):
Необходимо подтянуть данные в столбец "Марка провода" из листа "Компоненты" с условием :
1. Если в пролете используется 1 провод, то =Название компонента, т.е. одножильный провод.
2. Если провода больше одного, то =сцепить("провод"; кол-во проводов;"х"; название компонента1).
Сложность формулы в том, что при большом кол-ве данных (кол-во пролетов бывает до 200тыс., а компонентов до 900тыс.) расчет длится очень долго. Помогите ускорить расчет формулы! Быть может возможно вычисление макросом вместо формулы? Помогите написать макрос.
Формула в виде:
=ЕСЛИ(СЧЁТЕСЛИ(Компоненты!$A$2:$A$443;A3)=1;ИНДЕКС(Компоненты!$C$2:$C$443;ПОИСКПОЗ(A3;Компоненты!$A$2:$A$443;0));СЦЕПИТЬ("Провод ";СЧЁТЕСЛИ(Компоненты!$A$2:$A$443;A3);"х";ИНДЕКС(Компоненты!$D$2:$D$443;ПОИСКПОЗ(A3;Компоненты!$A$2:$A$443;0))))
Помогите в решении задачи (пример во вложении):
Необходимо подтянуть данные в столбец "Марка провода" из листа "Компоненты" с условием :
1. Если в пролете используется 1 провод, то =Название компонента, т.е. одножильный провод.
2. Если провода больше одного, то =сцепить("провод"; кол-во проводов;"х"; название компонента1).
Сложность формулы в том, что при большом кол-ве данных (кол-во пролетов бывает до 200тыс., а компонентов до 900тыс.) расчет длится очень долго. Помогите ускорить расчет формулы! Быть может возможно вычисление макросом вместо формулы? Помогите написать макрос.
Формула в виде:
=ЕСЛИ(СЧЁТЕСЛИ(Компоненты!$A$2:$A$443;A3)=1;ИНДЕКС(Компоненты!$C$2:$C$443;ПОИСКПОЗ(A3;Компоненты!$A$2:$A$443;0));СЦЕПИТЬ("Провод ";СЧЁТЕСЛИ(Компоненты!$A$2:$A$443;A3);"х";ИНДЕКС(Компоненты!$D$2:$D$443;ПОИСКПОЗ(A3;Компоненты!$A$2:$A$443;0))))
Изменено: - 26.06.2014 14:17:13