если верить профессору из Синего Трактора, то арбуз — это тыквина, а не ягода. Значит, может тусоваться с другими овощами
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Dyroff, здравствуйте. Список скиллов странный. Человек, который "разбирается" в этом всём — либо толком ни в чём не шарит (по верхам), либо будет сильно дороже. Минимум 300 на руки.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
fedsum, отформатированные даты и числа очень непросто фильтровать встроенным фильтром. Для снятия фильтров есть кнопка на вкладке Данные — разместите её на панели быстрого доступа и будет удобно.
Фильтр по активной ячейке можно выставить так: • нажать Правую Кнопку Мыши(ПКМ) на значении • нажать 2 раза ф (обязательно, чтобы стояла кириллическая раскладка клавиатуры). Это эмуляция перехода по пунктам меню ПКМ до пункта "Фильтр по значению выделенной ячейки".
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Помощь с кодом VBA, Необходимо модернизировать код VBA так, чтобы макрос выделял удаленные ячейки цветом. На данный момент макрос умеет только удалять значения из выбранного диапазона
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
LexxKD: Есть ли какой способ переместить это поле в начало списка?
скорее всего, нет. Можно написать свою форму для фильтрации и настроить там сортировку выдачи уникального списка значений. Это непросто.
Цитата
LexxKD: возможно, есть комбинация клавиш для быстрого включения/исключения пустых ячеек из фильтра?
это гораздо проще. Включите макрорекордер, отфильтруйте пустые, выключите и сохраните код себе.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
vdi: Пытался прописать это как .../download/"&ticker&"?period1..., но выходит ошибка
"внедрить" переменную в строку можно так: "начало строки" &sPeremennaya& "конец строки". Не забудьте отбить амперсанды & пробелами (особенно — с левой стороны). Это важно.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
прочтите статью по ссылке целиком. Также, можно написать dll и поместить код туда. Этот способ считается самым надёжным, но едва ли вы его будете использовать.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
nilske, предоплата у меня обязательная, но проблема в том, что часто просто невозможно оценить, сколько времени займёт проект. Делать плохо, потому что взял недостаточно, я не буду. Обычно, в таких случаях я говорю, что работаем по времени и час стоит столько-то. Но времени нет в принципе на такой проект. Рассчитывал упростить, но тут разбираться ещё нужно долго.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
EvgeniyLFC: Вы сделали вывод, даже не дождавшись пояснений…
я попросил примеры того, что вы хотите получить. Вы скинули 3 файла: два — это картинки черетежей и один (Excel) — это расшифровка номеров на чертежах. В таком случае нужно потратить немало времени на выяснение задачи и нюансов исполнения. У меня этого времени нет.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
testuser: Ну не на столько интересно ,чтобы, новую тему создавать, профит то не очевидный
я не думаю, что темы это только про очевидный профит. Тема — она же, как раз, и есть — для обсуждения
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Посмотреть бы строку в буфере перед выгрузкой — может, разобрать можно…
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
полностью согласен. Создавай на Кибере и зови. Может, The_Trick подключится
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
testuser, это уже другая тема) Думаю, проще всего, добавить в класс карт параллельный (при внесении очередного ключа) сбор двух одномерных массивов — ключей и значений. Так можно будет их очень быстро получить. Но это замедлит внесение ключей. Я бы оставил всё как есть. Если мне нужно сохранить порядок сбора или по другой причине иметь на выходе массивы ключей и/или значений — я делаю это сам.
Цитата
ZVI: Почитайте где-нибудь, как работают объекты и для чего им присвоение ByRef, а не ByVal.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
ZVI: Если нужно в Dictionary добавить самостоятельный объект, то это всегда через Set...=New... или его latе-binding аналог CreateObject.
честно говоря, это довольно расплывчатая формулировка…
Вот моя
При присвоении одного словаря другому ВСЕГДА будет создана только дополнительная ССЫЛКА на тот же участок памяти. Это значит, что копирования данных НЕ БУДЕТ. При очистке, наполнении или любых других операциях с любым из словарей в такой связке — то же самое будет "происходить" с другими. То есть, операции происходят с одним и тем же участком памяти, а все эти словари — только ссылки на него с соответствующими методами и свойствами.
Если словарь создан в процедуре и присвоен другому словарю, переданному в процедуру, то, после завершения процедуры, созданный в ней словарь "умрёт", ЭТА ссылка на участок памяти отвалится, но вторая (переданный словарь) останется. Это будет выглядеть, как копия, но, по сути, мы просто "переименовали" ссылку.
Если ситуация та же, но словарь внутри процедуры статичный, то, это значит, что эта ссылка продолжает жить после завершения процедуры со всеми правами — такими же, как у переданного словаря. То есть, используя такой словарь в процедуре для других целей, вы будете мгновенно "менять" и ВСЕ словари, которым он был присвоен.
Непонятно, насколько это справедливо для всех объектов (внутри одно типа, конечно же).
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
ZVI, я думал, что вы показали, как получить копию словаря НЕ в виде ссылки. Ведь новый объект создаётся, все дела. А получается то же самое, НЕВАЖНО создаётся ли новый объект словаря или просто переменная словарного типа. Вся суть — в присвоении и оно ВСЕГДА даст копию ССЫЛКИ. А не копию ДАННЫХ.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
очень долго. Не для этого случая. Тут, повторюсь, хватает обходных путей, на мой взгляд.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
testuser: ты добавил лишнюю строку, у ZVI , не было повторного присвоения
а что тогда подразумевалось под многоточием и какой смысл теста? Понятно, что, если новый объект создаётся, то он пустой и не равен другому.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Sub ObjPtr_Test()
Dim a As Dictionary, b As Dictionary
Set a = New Dictionary
Set b = a
a.add 1, 11: a.add 2, 22
Debug.Print (ObjPtr(a) = ObjPtr(b)), (a.Count = b.Count) ' True True
Set b = New Dictionary
Set b = a
Debug.Print (ObjPtr(a) = ObjPtr(b)), (a.Count = b.Count) ' True True
End Sub
да — это удобно, но я редко пользуюсь, потому что, если я собираю этот массив, то, как правило, и карту могу параллельно собирать.
Цитата
testuser: 2d "вертикальный" массив можно собрать из 2х 1D без перебора с помощью API, кстати..
ну перебор будет только по количеству одномерных массивов. Тут уже понятно У Виталия есть похожий инструмент: разделить ОДИН одномерный массив на двумерный.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
testuser, привет, тёзка! Опасностей я не боюсь, но, в этом случае, API не стоит заводить (пока что)
Цитата
testuser: у Виталия, кажется, словарь можно заполнять массивом
использовать массив в качестве значения словаря можно и в штатном (но я перестал так делать практически совсем). Вопрос не об этом, а о том, как быстро получить реальную копию словаря, вместо ссылки. Варианты обходных путей понятны (создавать внутри процедуры новый объект каждый или не очищать его). Их пока хватает для реализации логики.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
ZVI: Везде выше код ведет себя так, как ему и положено. Ваши bad это неправильное ожидание другого поведения кода.
под bad я имел в виду "мне так не надо".
Цитата
ZVI: У объектов по-другому, можно создавать объекты-ссылки на один и тот же адрес объекта:
так и получается:
Цитата
Jack Famous: Судя по тестам, при Set aDic(1) = dic создаётся СВЯЗЬ между элементом массива и этим временным словарём, и, заполняя временный словарь, я сразу заполняю и элемент массива …
то есть — 2 (и более) объекта для "управления" одним и тем же набором.
Цитата
ZVI: Если нужно в Dictionary добавить самостоятельный объект, то это всегда через Set...=New... или его latе-binding аналог CreateObject.
мне нужно скопировать один словарь в другой (пример выше), но, при этом создаётся ссылка. А мне нужен отдельный такой же словарь. Как это сделать на примере позднего связывания?
В примере достаточно не очищать словарь-источник. Он обнулится при завершении процедуры и ссылка на данные останется только в виде второго словаря. Сейчас сделаю пример поинтереснее.
UPD: не сделаю. Принцип один и тот же — если есть 2 (и более) таких "связанных" словаря, то очистив один, очистятся все (потому что это просто разные ссылки, но на один и тот же участок памяти).
Вопрос тогда такой: можно ли как-то без пересбора одного словаря в другой получить копию словаря (не ссылку). И, чтобы это было быстрее пересбора (иначе зачем это всё)? Только API?
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Sub FillDic(dic As Object)
Dim d As Object
Set d = CreateObject("Scripting.Dictionary")
d.add 1, 11
d.add 2, 22
Set dic = d
' d.RemoveAll ' If UnComment Then dic will .RemoveAll too
End Sub
'==================================================================================================
Sub Test()
Dim d As Object
Set d = CreateObject("Scripting.Dictionary")
FillDic d
Debug.Print Join(d.Keys, vbLf)
End Sub
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
ioruslan88, здравствуйте Готовых не знаю и вряд ли вам подойдут. Под задачи можно сделать что-то на VBA для Excel. Возможно, это устроит. Для обсуждения на коммерческой основе пишите в личку или, если хотите обратиться за платным решением к другим участникам — создайте тему в платной ветке.
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
AlienSx, главное, чтобы о такой методике не узнала жена
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
slx, здравствуйте Скорее всего, просто масштаб выставлен крупный
Тут посмотрите
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄