ну и раз уж вы здесь, то может ещё подскажете...
удалено, вопрос не по теме [МОДЕРАТОР]
удалено, вопрос не по теме [МОДЕРАТОР]
|
07.05.2013 17:33:02
Всем привет,
Вопрос следующий, есть такой код в Excel: .Cells(x, k) = DataArr(j, k) Цикл бежит, по x,k,j Т.е. циклом копирую значения массива на лист excel, обычно в DataArr(j,k) или цифры или текст, но когда встречается текст "=(0)=", то выпадает "application defined or object defined error" Как с этим можно бороться? Думал может дело в том, что это не текст или ещё что и пробовал писать так: .Cells(x, k) = CStr(DataArr(j, k)), но делу не помогло. Заранее спасибо! п.с. Если для решения этой задачи нужен более полный код или пример файла - могу кинуть. |
|
|
|
|
|
16.04.2013 10:44:27
День добрый, уважаемые форумчане,
Прошу прощения если вопрос уже был - в поиске не нашел Собственно говоря, вопрос есть в названии темы. Зачем мне это: я делаю отчет с множеством графиков на одном листе, потом это всё переводится в пдф и печатается для всех заинтересованных лист. Т.е. чтобы это всё было красиво надо, чтобы графики были в одну линию и одиннакового размера, если "как сделать одиннаковый размер понятно" (Format -> size), то вот как выставить графики в одну линию без 150 перемещений мышкой и траты нервов - не понимаю К примеру, в ppt это делается просто стрелочками или стрелочка + ctrl, если нужен более маленький шаг смещения Заранее спасибо! |
|
|
|
|
|
07.03.2013 10:17:22
Rustem Haziev,
Фильтр не очень удобно, т.к. условие "should include?" может меняться время от времени и неудобно всё время копировать/вставлять формулы + я верю, что есть какое-то красивое решение с формулой массива, до которого я не могу дойти. Владимир, Не совсем понял, как это использовать? По сути это считает вес каждого отдельного элемента от суммы всех нужных элементов. Можно, конечно, потом ранжировать эти веса и получить нужный результат, но это ничем не будет отличиться от решения если вместо вашей длинной формулы вписать =IF(B2=1;C2;"") Вместо аргумента Array для PERCENTRANG это тоже вписать не получатся. |
|
|
|
|
|
06.03.2013 20:17:11
Доброго времени суток, вопрос следующий:
Использую формулу (PERCENTRANK.EXC), чтобы проранжировать элементы в массиве ("Factor to rank") от 0 до 100, возникла необходимость ранжировать только те элементы для которых есть определенное условие ( в моем случае это цифра 1 в колонке "Should include?" ) Как сделать так, чтобы в формулу для PERCENTRANK.EXC в колонке "Rank" брались только те элементы напротив которых стоит 1 в колонке "Should include?" В примере: на листе "Current" то, что имею сейчас, на листе "What want to get" то, что хочу получить в итоге в колонке "Rank" (там я просто удалил ненужные элементы) Спасибо за помощь! |
|
|
|
|
|
20.08.2012 15:58:30
День добрый, уважаемые форумчане,
Вопрос следующий: требуется ускорить работу макроса. Как я думаю сам: надо как-то избавиться от вложенных циклов и, наверное, перейти на обратку массивами, но покопавшись в форуме как именно сделать пока не разобрался. Буду рад любому совету. А идеально и примеру кода) Предыстория: На лист Input sheet каждую неделю, заменяя предыдущие данные, будет копироваться порядка 20-30к строк с данными и потом запускается макрос. Как работает макрос: Берет значение UID, смотрит есть ли такое на листе “Warnings”, если есть, то смотрит в колонку “results” на наличие кода и увеличивает соответствующий код на 1 (для каждого кода на листах Warnings и Unique sheet идет своя колонка) если кода нет – ничего не делает. Если в “UID” пусто, то берется e-mail и процесс повторяется (Пользователь может иметь uid, а может и не иметь, но учет по UID приоритетен). Если макрос находит на листе “Warnings” UID или е-мейл, то он переходит к следующему UID (не сверяя с unique records). Если не находит, то он идет на лист “Unique records”, если такой UID там уже есть, то он приплюсовывает соответствующий код из “Results”, если не находит, то переносит этот UID в конец списка, копируя e-mail и если есть коды из “Results”. Когда весь лист Input sheet пройден, то макрос протягивает формулу из колонок P4:V4 до последней строчки, потом идет по колонке Final (листа Unique records) и если находит код 1 и этой записи ещё нет на листе “Warnings”, то копирует её в конец списка (копирует E-mail, UID и Reason на лист Warnings). Ещё раз заранее спасибо! |
|
|
|
|