|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 04.03.2016, 22:03 [ТС] | |
|
Хочу просто обратить ваше внимание. Может запомнится/вспомнится и не потеряется лишнее время на разбор полетов в следующий раз.
Если у вас табличка с значениями, где в столбце встречается "бла-бла" и "бла-бла ", то фильтр по этому столбцу покажет только одно значение "бла-бла", а вот суммесли в условии отбора будет уже строже! и условие "<>бла-бла" (как пример) учтет уже только одну строку ... а вы будете сидеть и думать глядя на список значений в фильтре "ну там же одно значение и 2 строки! почему он посчитал только одну строку?!" Добавлено через 3 минуты (при включении: "Параметры сводной таблицы""Вывод""Автоматически изменять ширину столбцов при обновлении") Первый вариант. Берем сводную, берем поле и тащим в диалоги столбцов/строк - тащится?! отлично! теперь тащим на лист в зону сводной чтобы кинуть в нее ... тащится и кидается! Второй вариант (печальный). Берем сводную, берем поле и тащим на лист в зону сводной чтобы кинуть в нее, потом передумываем и тащим в диалоги столбцов/строк - кидается?! НЕА!
0
|
|
| 04.03.2016, 22:03 | |
|
Ответы с готовыми решениями:
126
Готовые решения, примеры и рекомендации начинающим на WPF [Элд Хасп] Обсуждение темы "Готовые решения, примеры и рекомендации начинающим на WPF" Проблемы с алгоритмом решения задачи |
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 11.03.2016, 16:26 [ТС] | |
|
Зачем, если мы изначально установили формат ячейки как "Текст", при ее редактировании и вводе формулы в "Строке формулы", отражается и цветовая подсветка ссылок на ячейки и сами ячейки кантуются цветовой подсветкой?!
Ведь после энтера, все что было введено - станет строкой, т.е. вся формула превратится в тупой набор символов. Зачем обманывать пользователя, что он вводит формулу, а не строку?! Неужели так трудно сначала проверять формат будущего текста, а затем сразу не форматировать его как формулу?! По опыту, пользователей это сбивает с толку и при дальнейшем отражении введенной формулы как строки и ставит их в тупик.
0
|
|
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 01.04.2016, 13:19 [ТС] | |
|
Если мы используем локальную(Private) константу (переменную, функцию) в модуле, то при ее использовании в другом модуле, клик на "Definition" в контекстном меню этой константы нам ничего не даст ... вернее, выдаст "Indentifier under cursor is not recognized"
и это правильно. А вот если мы используем директивную константу "#Const dКонстанта=...", то при ее использовании в другом модуле и "Definition" на ней в этом (другом) модуле, IDE вывалится на строчку ее объявления. Т.е. пользователь ее видит, а вот интерпретатор (при исполнении кода) ее(директиву) не увидит (хотя, она тоже Private). что очень сомнительно с т.зрения правильности
0
|
|
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
||||||
| 06.04.2016, 12:05 [ТС] | ||||||
|
А вы знали, что:
генерит Worksheet_SelectionChange?! при том, что реальный Selection не трогает!!! причем, опять же - 2 раза ...
0
|
||||||
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 07.04.2016, 13:06 [ТС] | |
|
1. Если пользователь находится в ячейке
2. В ячейке есть примечание 3. Это примечание при переходе в него находится в километре от редактируемой ячейки (а возможно и за видимой областью листа, которая видна на экране(на которой находится эта ячейка)) , то пользователю крайне неудобно, когда после редактирования примечания, активной(видимой) областью листа остается та, на которой располагался прямоугольник примечания ... т.к. после этого, пользователю приходится возвращаться скролами или смещением курсора выделения ячейки, а это еще и лишние эвенты программного кода (которые не всегда нужны). Почему так сложно возвращать видимую область на место?! Добавлено через 14 минут 1. Выделяем область A1:B1 2. Объединяем 3. Выделяем область A1:B5 4. Жмем Ctrl+1/Граница/устанавливаем любой вариант линии справа 5. Наблюдаем - все правильно, граница появилась ... теперь, 1. Выделяем область A1:B1 2. Объединяем 3. Выделяем столбец B (нажатием на заголовок столбца) 4. Жмем Ctrl+1/Граница/устанавливаем любой вариант линии справа 5. И наблюдаем - справа появилась граница у всех ячеек столбца, за исключением границы нашей объединенной ячейки A1:B1 Где логика такого разного поведения?! Excel Professional 2010x64(14.0.7166.5000)
0
|
|
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 08.04.2016, 15:03 [ТС] | |
|
1. Берем чистую книгу.
2. Рисуем элементарную табличку 3. Строим по ней график, причем данные выбираем с контролом, так, чтобы где-то в поле "Значения" было выражение типа "=Лист1!$B$2;Лист1!$C$2" теперь копируем этот график: 4. Ctrl+c, Ctrl+v ... получаем его копию 5. Смотрим значение в нашем поле "Значения" - там стоит "=(Лист1!$B$2;Лист1!$C$2)" ... собственно, как и должно быть ... жмем из диалога в этом поле Ентер и выходим ... теперь копируем этот график: 4. Удерживая Ctrl, тянем график в сторону и ... получаем его копию 5. Смотрим значение в нашем поле "Значения" - там стоит "=(Лист1!$B$2,Лист1!$C$2)" ... собственно, разделитель поменялся ... ничего не изменяя - жмем Ентер и получаем окно с "Ошибкой в формуле" Excel Professional 2010x64(14.0.7166.5000)
0
|
|
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
||||||
| 13.04.2016, 17:15 [ТС] | ||||||
|
А вы знали, что если вы жмете Ctrl+F, выбираете "Искать в книге", и указываете то, что в книге отсутствует, то
1. Вы получите сообщение "Приложению Microsoft Excel не удается найти искомые данные." 2. После нажатия "ОК" в появившемся окне, последовательно во всех листах отработает следующий код:
при том, попутно будет отрабатывать и весь ваш код в этой функции ... но! что-то работать будет, а вот к примеру Application.OnKey "^+{A}", "" - уже нет --------------------------------------------------------------------------------- Добавлено через 12 минут 1. Сделайте сводную таблицу 2. Выделите строчку шапки получившейся таблицы 3. Попробуйте сгруппировать строку ... не получилось? необходимый пункт меню заблокирован (заблокирована данная функция для этой области)?! а вам очень нужно?! 4. Выделите +1 строчку выше и строчку шапки сводной, сгруппируйте их 5. Уберите из группировки ту лишнюю, расположенную выше шапки одну строку ... велкам ) --------------------------------------------------------------------------------- Добавлено через 11 минут Возможно расскажу вам уже известную для вас истину, но может кто и не знает (меня забавляет, а потому добавлю): 1. Возьмите чистую книгу и в определенных листах(не во всех листах) что-то где-то напишите (в любой ячейке) ... (но некоторые листы должны остаться не тронутыми) 2. Нажмите Ctrl+F, выберите "Искать в книге" 3. Оставьте искомое значение пустым и нажмите "Найти все" в листбуксе появятся списком ячейки $A$1 только тех листов, на которых вы что-то написали. Кому не понятно почему так происходит - просто подумайте немного подольше )
0
|
||||||
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 13.05.2016, 12:59 [ТС] | |
|
Представьте, что вы - очень важный менеджер, отвечаете за очень важные задачи и работаете с очень важными и даже секретными данными. И ... по какой-то причине храните эту секретную информацию в эксельной книге ...
Предположим еще и то, что никто не должен знать какие-то ключевые слова из этой книги - ну ... например, какие-то фамилии ... И так (представим что над вами не сошлись звезды, но сошлись следующие обстоятельства), - вы садитесь за чей-то компьютер (а какая разница, если вы уверены, что никаких хуков не стоит), - открываете свою супер-секретную книгу с паролем, вводите пароль, книга открывается (но возможно она и без пароля, но на вашей флешке), - вы жмете Ctrl+H и меняете фамилию Иванов на Сидоров ... - сохраняете книгу и ее закрываете ... (не закрывая приложение экселя) - и будучи уверенным, что все секретно - идете по своим делам ... затем ... - какой-то заинтересованный пользователь Вася садится за этот компьютер - видит, что после вашей работы осталось приложение экселя и в этом приложении висит окно замены значений ... - причем, в этом оставшемся окне - информация о вашей работе с файлом ... и более того - фамилия Иванова и Сидорова!!! - Вася продает эту информацию и получает свой первый миллион ))) Вопрос: Зачем оставлять открытым окно замены и поиска текста после закрытия книг приложения?! Какой в этом глубокий смысл и почему стоимость его оставить - выше, чем стоимость ухода от потенциальных рисков и обеспечения конфиденциальности информации пользователя! --------------------------------------------------------------------------------- Добавлено через 28 минут Хотите довести начинающего эксельного кодера до истерики? Создайте все листы книги средством Ctrl+F11. Удалите все существующие новых версий ... и попросите на досуге - добавить обработчик событий какого-то листа ... Этим же способом можно воспользоваться, чтобы до вести до истерики какого-нибудь хвастунишку - просто добавьте на такой лист табличку и попросите сделать с нее сводную ) --------------------------------------------------------------------------------- Добавлено через 27 минут 1. Создайте сводную 2. Добавьте (например) в фильтр сводной какое-то поле 3. На ячейку отбора значений этого фильтра сделайте примечание (Shift+F2) 4. Во-первых, в контекстном меню этой ячейки нет ни одного поля управления примечаниями 5. Выделяем какую-то другую ячейку (не ту, в которую только что добавили примечание) 6. Жмем "Найти и выделить""Область выделения" и ставим галочку видимости на объект этого примечания ... - примечание появилось и висит 7. Затем стрелками клавиатуры подползаем к этой ячейке и выделяем ее. Все правильно - ячейка выделилась. примечание висит. 8. Теперь отползаем стрелками клавиатуры в сторону и мышкой выделяем эту ячейку при этом, немного задерживая указатель мыши в области этой ячейки (затем его убирая). (если указатель мыши не задержите, то фокуса не будет) 9. И! примечание само собой перестает отражаться. Флажок из окна "Выделение и видимость" - сам по себе пропадает. Нет слов ...
0
|
|
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
||||||
| 17.05.2016, 12:36 [ТС] | ||||||
|
1. Запускаем новое приложение экселя
2. Заходим в IDE 3. Создаем новый модуль (как вариант) 4. В этом новом модуле пишем, например:
6. В окне поиска значений пишем "FSO" 7. Жмем ентер ... и система находит находит нам первое вхождение ... Excel Professional 2010x64(14.0.7166.5000) 8. А теперь самое интересное! Аккуратно (без лишних действий) закрываем окно активного модуля и жмем "Find Next" ... эксель дохнет ... Excel Professional 2010x64(14.0.7166.5000) 64х ... но что-то мне подсказывает, что мы не одни с этим багом
0
|
||||||
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
||||||||||||||||
| 24.05.2016, 11:54 [ТС] | ||||||||||||||||
|
После многочисленных ситуаций, проверок и попыток (пока не найден ответ такого странного поведения), рекомендуется вместо:
, а для перестраховки лучше написать:
P.S. Помните, что dWorkbook.Worksheets(dИмяЛиста$).Cells.S pecialCells(xlLastCell).Column не работает на защищенном листе P.S. то же касается и столбцов
0
|
||||||||||||||||
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|||||||||||
| 27.05.2016, 16:46 [ТС] | |||||||||||
|
Выяснилась очень интересная структура дерева расчетов в случае появления циклической ссылки:
На листе: 1. Отключаем автоматический пересчет формул 2. В ячейке A1 пишем "=fФормула1()" 3. В ячейке B1 пишем "=fФормула2()" В коде:
получаем: Вызов 2 Вызов 1 Вызов 1 Вызов 1 Вызов 1 Почему же произошло 4 вызова первой формулы?! Excel как-то простраивает дерево расчетов, потом бежит по дереву и если в процессе расчетов вызвалась формула в ходе работы которой произошло обращение к какой-то другой ячейке(области), то он бросает все и считает эту область ... причем, если в структуре изначального дерева были ячейки, которые он потом посчитал бросившись к ним из-за расчетов, то он их из этого изначально дерева удаляет ... - все логично и правильно ... Из дерева они удаляются в любом случае, но вот если расчет удаляемых ячеек должен был быть посчитан на основании значения ячеек с которых произошел вызов их пересчета (т.е. по сути - образовалась циклическая ссылка), от Excel составляет последовательность таких ячеек и всегда осуществляет почему-то ровно 3 дополнительных вызова их расчетов в следующей последовательности: Представим, что ячейки A1 и B1 образуют циклическую ссылку, а C1 будет использовать значение B1 , т.е. [C1]=fФормула3()+B1,
Вызов 3 Вызов 1 Вызов 2 Вызов 2 Вызов 1 Вызов 3 Вызов 3 Вызов 1 Вызов 2 Вызов 2 Вызов 1 Вызов 3 Обратите внимание на последовательности 3-1-2, 2-1-3, 3-1-2 и 2-1-3 ... т.е. после первого просчета по дереву он потом еще 3 раза в разной последовательности пересчитывает этот круг формул: - от начала в конец, - из конца в начало, - и опять из начала в конец ... и никаких хитростей )
0
|
|||||||||||
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 07.06.2016, 15:25 [ТС] | |
|
1. Ставим точку останова или Stop.
2. После останова в указанной точке, выделяем 1(какое-то количество) строку снизу и текущую 3. Удаляем ... 4. Потом жмем откат ... и (продолжаем выполнение по F5) выполнение продолжится с последней строки восстановленного блока! вроде бы мелочь, а помнишь об этом не всегда ... а потом сидишь и думаешь - ПОЧЕМУ-у-у-у-у(другой результат)?! (ведь, выполнение кода может продолжиться со строки программы не соответствующей алгоритму и данным) помните, что точка выполнения при откате удаления строк будет не та, на которой вы остановились!
0
|
|
|
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
|
|
| 19.10.2016, 20:38 | |
|
0
|
|
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
||||||
| 15.12.2016, 09:48 [ТС] | ||||||
|
Не по теме: Забавно: Коллеги, не нужно писать что обозначает символ "?" и почему он так отрабатывает в окне модуля. Кажется это знают все и это очевидно! Не думал, что кто-то может этого не знать или думать, что этого не знает кто-то не из начинающих! А вот почему это не просто можно, а нужно считать косяком - отдельная тема, порассуждайте! P.S. а еще попробуйте следующее:
0
|
||||||
|
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
|
|
| 15.12.2016, 22:19 | |
|
0
|
|
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 18.05.2017, 16:09 [ТС] | |
|
Алгоритмы сортировки строковых массивов данных: MSD-сортировка и ABCSort (защищено патентом)
+ множество других методов сортировки (в реализации со строковыми массивами) MSD-сортировка
0
|
|
|
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
|
|
| 30.11.2017, 22:10 | |
|
Разный приоритет операторов "унарный -" и "^" в формулах листа Excel и в VBA
На листе =-2^4 дает 16, т.е. - имеет приоритет перед ^. В VBA -2^4 дает -16, т.е. ^ имеет приоритет перед -. Именно так приоритеты описаны в Справке, так что багом этот факт считать нельзя. Кстати, на листе можно извлекать корень нечетной степени из отрицательных чисел: =-7^(1/3) , и таким образом возводить отрицательные числа в дробную степень, например =-7^(1/3)^2 (напрямую =-7^(2/3) не работает). В VBA отрицательное число можно возводить только в целую степень, т.е. кубический корень из отрицательного числа извлечь нельзя.
3
|
|
|
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
|
|
| 02.12.2017, 00:51 | |
|
Hidden features of VBA - тема на StackOverflow, родственная этой: https://stackoverflow.com/ques... res-of-vba
Там есть ссылка на описание интересной библиотеки Shlwapi для работы с путями файлов (и со строками) https://msdn.microsoft.com/en-... e.10).aspx
2
|
|
|
1069 / 107 / 4
Регистрация: 19.12.2012
Сообщений: 458
|
|
| 12.07.2018, 12:57 [ТС] | |
|
Вы думаете, что работая с темой "зависимых ячеек", используя NavigateArrow или DirectDependents - все хорошо?!
ДА! до тех пор, пока вы не начали работать по этой теме в функции, вызванной с листа или из условного форматирования! - как только код отрабатывает в "этом режиме", то все ваши списки Dependents и Precedents превращаются в одну единственную (анализируемую) ячейку - все count=1! т.е. код по какой-то причине перестает получать доступ к дереву вычислений ... грустно
0
|
|
|
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
|
|
| 21.02.2019, 15:55 | |
|
Не VBA, но Excel: Разве должна граница ячейки принимать наклон вместе с текстом?
0
|
|
| 21.02.2019, 15:55 | |
|
Бывший профессионал cs 1.6 просит решения проблемы USB устройство, проблемы и пути решения. Проблемы с выводом решения на стандартный поток Прошу помощи решения проблемы в перекрестном... Каковы возможные решения проблемы рывков в эмуляторе? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Новая последнея моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|