Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/88: Рейтинг темы: голосов - 88, средняя оценка - 5.00
77 / 11 / 0
Регистрация: 28.03.2018
Сообщений: 828

Формула эксель через макрос

08.08.2018, 14:51. Показов 17935. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
toiai, ребята знающие, подскажите пожалуйста.....как такую формулу сделать програмно...в макрос.

Code
1
=(СУММЕСЛИ(D6:AH6;">0";D6:AH6)-СУММЕСЛИ(D6:AH6;"<0";D6:AH6))-$CR$5

вот что получается:


Visual Basic
1
2
      .Formula = _
        "=sumif(" & Range(Cells(a, bn), Cells(a, bk)).Address(0, 0) & ","">0"")-sumif(" & Range(Cells(a, bn), Cells(a, bk)).Address(0, 0) & ",""<0"")"

написать все что в больших скобках получилось...не знаю как из всего этого вычесть содержимое ячейки. как граммотно применить "Address(0, 0)"? спасибо за советы
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.08.2018, 14:51
Ответы с готовыми решениями:

Макрос для Эксель
Добрый день, мне нужна помощь с написанием одного макроса, суть в чем: есть много типовых таблиц, по шаблону одинаковые, отличаться могут...

Макрос эксель. Фильтровка
Люди плиз, как сделать по событию перехода на второй лист, что бы автофильтр был равен автофильтру на первом листе(только по одной...

Макрос для таблицы эксель с поиском
Привет, помогите, очень-очень срочно В эклеле таблица: номер документа, фамилия препода, оценка по предмету. Оператор вводит эти данные...

36
1866 / 1186 / 192
Регистрация: 27.03.2009
Сообщений: 4,603
14.08.2018, 12:32
Студворк — интернет-сервис помощи студентам
mor_sergey, можешь дать пример файлика? немного не могу понять формат документа
1
472 / 161 / 80
Регистрация: 07.10.2015
Сообщений: 379
14.08.2018, 12:37
mor_sergey, немного не так - мой код как раз проставляет принудительно, а не контролирует сумму. Ибо каждый раз определять границы очередного диапазона затруднительно. И потом, а что должен делать макрос, если пользователь не догонит до "нужной" суммы, и поставит выходной? Ну ведь ручной ввод, что хочу, то ворочу. К примеру, юзер поставит Иванову 3 раза подряд по 11, а затем пропустит одну (ну, может, две) ячейки, и начнет новую цепочку. Что должен делать макрос в этом случае? Или вдруг кто-то решит поставить три выходных подряд, опять же - действия?
1
77 / 11 / 0
Регистрация: 28.03.2018
Сообщений: 828
14.08.2018, 13:03  [ТС]
Ruella, блин. и правда.а что если....ну вот.об этом я не подумал.может пусть ставит, его макрос отругает....оповещением каким нить
0
472 / 161 / 80
Регистрация: 07.10.2015
Сообщений: 379
14.08.2018, 13:10
mor_sergey, ну хорошо, отругает, к примеру... а дальше что ему делать? вот поставил юзер 3 выходных вместо 2, отругал его макрос, а юзер не среагировал - мол, отстань, мне так надо что делать макросу дальше? плюнуть и начинать новый отсчет с первого введенного значения после 3 выходных?
1
77 / 11 / 0
Регистрация: 28.03.2018
Сообщений: 828
14.08.2018, 13:16  [ТС]
Ruella, ну пусть это останется на совести того товарища.да и запихать действие никогда не поздно....мне бы чтобы работало.....не соображу ведь
0
0 / 0 / 0
Регистрация: 14.08.2018
Сообщений: 12
15.08.2018, 15:28
Слушайте, а если там формула вбита - может ну его этот ВБА и реализовать все просто формулами? Добавить условное форматирование для отображения неверного количества часов и все.
0
77 / 11 / 0
Регистрация: 28.03.2018
Сообщений: 828
15.08.2018, 15:42  [ТС]
Ruella,
Миниатюры
Формула эксель через макрос  
0
0 / 0 / 0
Регистрация: 03.09.2015
Сообщений: 11
23.12.2021, 14:51
Доброго дня всем!
Люди добрые, помогите с макросом. я не шарю! А раздвинуть формулу на 20000 ячеек - пользователи могут накосячить. Нужен макрос, чтоб работал как эта формула в столбце P начиная от P2 до P20000:

Code
1
=ЕСЛИ(ИЛИ(N2="Не возможно";ЕПУСТО(J2));"";ЕСЛИ(ИЛИ(И(ГОД(B2)-J2>4;ИЛИ(K2="M2";K2="M3";M2="Такси"));И(M2="Опасник";ГОД(B2)-J2>0));ДАТАМЕС(B2;6);ЕСЛИ(И(ГОД(B2)-J2<10;M2="";ИЛИ(K2="M1";K2="N1";K2="O1";K2="O2";K2="O3";K2="O4";K2="L"));ДАТАМЕС(B2;24);ДАТАМЕС(B2;12))))
Суть в следующем: Есть столбец P, в который в ячейке требуется высчитать дату в зависимости от значений в соседних ячейках строки, при условии что, в столбцах J и N не пусто и в столбце N выбрано значение "Возможно", иначе ячейка пустая.
Значения в столбцах:
B - дата
J - год от 1903 до года в столбце B
K - значения L, M1, M2, M3, N1, N2, N3, O1, O2, O3, O4
M - Спец.сигналы, Такси, Учебка, Опасник, или пустая ячейка
N - возможно, не возможно

Заранее огромнейшая благодарность!!!
0
89 / 49 / 18
Регистрация: 03.06.2019
Сообщений: 187
23.12.2021, 20:26
Code
1
Range("P2:P20000").Formula = "В эти кавычки скопируйте Вашу формулу"
А если нужен именно макрос, выполняющий такой же расчет как Ваша формула - приложите небольшой файл с образцом таблицы
1
860 / 510 / 187
Регистрация: 09.03.2009
Сообщений: 1,732
23.12.2021, 21:14
Только, мне кажется, если у человека формула с русскими функциями, то надо Range("P2:P20000").FormulaLocal писать. Не?
1
89 / 49 / 18
Регистрация: 03.06.2019
Сообщений: 187
23.12.2021, 21:56
Zeag, добрый вечер! Я всего лишь хотел показать ТС-у как можно не тянуть формулу на 20000 строк, т.к. в этом основная проблема. Если ТС собирается использовать макрос и в теме от него нет файла, значит рассчитывает самостоятельно вставить код в файл, а значит и формулу макрорекордером сможет записать
0
860 / 510 / 187
Регистрация: 09.03.2009
Сообщений: 1,732
23.12.2021, 22:00
Igor_61, посмотрим. Вон же пишет:
Цитата Сообщение от nesterovegor Посмотреть сообщение
я не шарю!
0
0 / 0 / 0
Регистрация: 03.09.2015
Сообщений: 11
24.12.2021, 12:52
Необходимо чтоб макрос срабатывал именно при заполнении 2 определенных ячеек в столбцах N и J. а при удалении этих значений или выборе в N значения "Не возможно" в P было пусто
Вложения
Тип файла: 7z Эл.журнал Дырнос.xlsm.7z (284.0 Кб, 3 просмотров)
0
0 / 0 / 0
Регистрация: 03.09.2015
Сообщений: 11
27.12.2021, 12:16
Цитата Сообщение от Igor_61 Посмотреть сообщение
Zeag, добрый вечер! Я всего лишь хотел показать ТС-у как можно не тянуть формулу на 20000 строк, т.к. в этом основная проблема. Если ТС собирается использовать макрос и в теме от него нет файла, значит рассчитывает самостоятельно вставить код в файл, а значит и формулу макрорекордером сможет записать
Не смогу, к сожалению. Поэтому и прошу помощи.
0
27.12.2021, 12:18

Не по теме:

Цитата Сообщение от Igor_61 Посмотреть сообщение
Я всего лишь хотел показать ТС-
Да не ТС он, просто влез в чужую тему.

0
0 / 0 / 0
Регистрация: 03.09.2015
Сообщений: 11
27.12.2021, 14:48
Ругается на кирилицу
Миниатюры
Формула эксель через макрос  
0
860 / 510 / 187
Регистрация: 09.03.2009
Сообщений: 1,732
27.12.2021, 14:52
Удвойте кавычки.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.12.2021, 14:52

Макрос на сохранение двух листов эксель в отдельные файлы mht
Здравствуйте, как сделать что бы эксель 2003 сохранял выбранные листы (Лист1 и Лист2) в отдельные файлы mht при нажатии Command Button? ...

Макрос создания нового листа в Эксель с названием от 1 и далее нарастающим итогом
Добрый вечер! Очень нужна помощь, уважаемые программисты!!! Необходим макрос для кнопки, при нажатии которой, создается новый лист в...

Спасите, пожалуйста, создать макрос, который запишет темы писем в Эксель
Помогите, пожалуйста, создать макрос, который запишет темы писем в Эксель. Я вот никак, смогла сделать только, чтобы макрос сохранял...

Нужен макрос, который загрузит в эксель выбранное количество ТХТ файлов на лист
Добрый день! Прошу помочь. Есть n ТХТ файлов. Нужен макрос, который загрузит в эксель выбранное количество ТХТ файлов на лист: в...

Формула или макрос
Добрый день, может быть у кого-то есть готовое решение или подскажете как сделать такую процедуру. Дана таблица эксель с данными ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
37
Ответ Создать тему
Новые блоги и статьи
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи. . . .
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru