Форум программистов, компьютерный форум, киберфорум
MS Office Excel
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
IvanOK
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
1

Вычисление функции конмесяца в ексель 2010

21.03.2013, 15:24. Просмотров 2448. Ответов 16
Метки нет (Все метки)

я програмно заполняю формулы конмесяца и он выбивает #имя, но когда при нажатии клавиши F2 и потом enter ошыбка прекрасно исчезает... то есть формула считается нормально, в чем проблема, ето все в офисе 2010 хотя в 2003 етой проблемы нет вообще
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2013, 15:24
Ответы с готовыми решениями:

Вычисление функции отключено, поскольку истекло время, выделенное на вычисление предыдущей функции
Подскажите пожалуйста, загружаю файл на ftp: WebClient myWebClient = new WebClient(); ...

Вычисление периметра(вычисление расстояния между вершинами реализовать в виде функции)
даны координаты вершин многоугольника (X1,Y1), (X2,Y2),...(Xn,Yn). Напишите программу для...

Оформить в виде функции вычисление среднеарифметического, вычисление суммы и произведения чисел
2. Даны три числа. Оформить в виде функции вычисление среднеарифметического, вычисление суммы и...

Вычислить m значений функции f(x) на отрезке [a, b]. Вычисление величины f(x) оформить в виде функции
Составить программу решения поставленной задачи: Вычислить m значений функции f(x) на отрезке ....

16
alx74
20 / 20 / 0
Регистрация: 09.03.2013
Сообщений: 52
21.03.2013, 16:18 2
Может с F9 связано (автоматический пересчет формул)? Если попробовать не F2 и Enter, а F9 нажать.
0
Казанский
14915 / 6316 / 1721
Регистрация: 24.09.2011
Сообщений: 9,977
21.03.2013, 16:36 3
Цитата Сообщение от IvanOK Посмотреть сообщение
я програмно заполняю формулы конмесяца
Покажите код. Возможно, FormulaLocal вместо Formula.
0
IvanOK
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
21.03.2013, 16:50  [ТС] 4
Казанский,
Visual Basic
1
cells(i,1).FormulaR1C1 = "(КОНМЕСЯЦА(RC[-3],0))"
вот часть формулы, но все ошыбки именно из-за етой функции, саму причину проблеми понять не могу почему так

Добавлено через 42 секунды
Цитата Сообщение от alx74 Посмотреть сообщение
Может с F9 связано (автоматический пересчет формул)? Если попробовать не F2 и Enter, а F9 нажать.
ето все работает....проверено
0
Serge 007
955 / 595 / 11
Регистрация: 11.06.2010
Сообщений: 1,345
21.03.2013, 17:36 5
Вместо
"(КОНМЕСЯЦА(RC[-3],0))"
пишите
"=EOMONTH(RC[-3],0)"
1
IvanOK
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
21.03.2013, 17:50  [ТС] 6
Serge 007, хорошо почему тогда в 2003 работает без вяких проблем
0
Serge 007
955 / 595 / 11
Регистрация: 11.06.2010
Сообщений: 1,345
21.03.2013, 17:55 7
Цитата Сообщение от IvanOK Посмотреть сообщение
в 2003 работает без вяких проблем
Это вряд ли
В таком виде, как Вы выложили, код не будет работать в принципе, в любой версии
Попробуйте сами и убедитесь
0
IvanOK
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
21.03.2013, 18:08  [ТС] 8
Цитата Сообщение от IvanOK Посмотреть сообщение
cells(i,1).FormulaR1C1 = "(КОНМЕСЯЦА(RC[-3],0))"
ето реальный пример с кода который работает и дает нормальный результат в 2003, проблема возникла в 2010

Добавлено через 7 минут
Цитата Сообщение от Serge 007 Посмотреть сообщение
Вместо "(КОНМЕСЯЦА(RC[-3],0))"
пишите "=EOMONTH(RC[-3],0)"
протестировал в 2003, работает и так и етак....к 2010 еще не тестил....
0
Все имена заняты
1248 / 407 / 51
Регистрация: 14.06.2009
Сообщений: 628
21.03.2013, 18:21 9
А то, что идет обращение к третьему с конца столбцу - это так и задумано?
0
IvanOK
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
21.03.2013, 19:19  [ТС] 10
Все имена заняты, не важно куда оно обращается проблема в другом.... при внесении формулы в ячейку не делаеться расчет, а выдает ошыбку #имя, проблема в том что функцию ексель как бы не распознает, когда делаю F2 потоп enter все стает на всои места...вот в чем проблема...

Добавлено через 12 секунд
и ето в 2010

Добавлено через 52 минуты
проблема решена с помощю вашего совета
Цитата Сообщение от Serge 007 Посмотреть сообщение
Вместо "(КОНМЕСЯЦА(RC[-3],0))"
пишите "=EOMONTH(RC[-3],0)"
а вообще то 2003 понимает и так и етак...
0
Serge 007
955 / 595 / 11
Регистрация: 11.06.2010
Сообщений: 1,345
21.03.2013, 23:46 11
Цитата Сообщение от IvanOK Посмотреть сообщение
ето реальный пример с кода который работает и дает нормальный результат в 2003, проблема возникла в 2010
IvanOK, не путайте форумчан
Вот это: "(КОНМЕСЯЦА(RC[-3],0))" НЕ БУДЕТ работать НИ В ОДНОЙ версии Excel по причине того что это НЕ ФОРМУЛА, а текст. Для того что бы выражение стало формулой? оно обязано начинаться со знака "=", что в Excel, что в VBA

Смотрите видео, так будет понятнее
http://youtu.be/5ghjY0V39fk
0
Вложения
Тип файла: rar IvanOK.rar (335.5 Кб, 6 просмотров)
IvanOK
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
22.03.2013, 09:49  [ТС] 12
= есть, попробуйте для себя на и так и так, разных офисах и вы меня поймете)
0
Serge 007
955 / 595 / 11
Регистрация: 11.06.2010
Сообщений: 1,345
22.03.2013, 11:04 13
Цитата Сообщение от IvanOK Посмотреть сообщение
= есть
Ткните пальцем где есть "=" в Вашей записи
Цитата Сообщение от IvanOK Посмотреть сообщение
3
cells(i,1).FormulaR1C1 = "(КОНМЕСЯЦА(RC[-3],0))"
Цитата Сообщение от IvanOK Посмотреть сообщение
попробуйте для себя на и так и так, разных офисах
Вы видео смотрели? Специально для Вас снял, что бы Вы ерунду не писали
Если У Вас работает - так продемонстрируйте это
0
IvanOK
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
22.03.2013, 15:07  [ТС] 14
Serge 007, я часть формулы показал и моя ошыбка в том что удалил с той частью =
а вы все таки попробуйте то что я писал и все поймете
вы мне подали хорошую идею, в ексель 2003 я етого не замечал, а вот 2010 с етим проблема

Добавлено через 4 минуты
Serge 007, ну даже на вашем видео показано что 2003 на русском выдает нормально, а на 2010 нет.... вот и вся проблема
0
m-ch
5568 / 850 / 284
Регистрация: 25.02.2011
Сообщений: 1,205
Записей в блоге: 1
22.03.2013, 15:27 15
Цитата Сообщение от IvanOK Посмотреть сообщение
а вообще то 2003 понимает и так и етак...
Будет работать либо так, либо по другому (проверил только что в 2003 и в 2007)
функция КОНМЕСЯЦА() в 2003 офисе изначально отсутствует, работает только при подключенном "Пакете анализа"
В "Пакете анализа" 2003 эта функция используется только кириллицей, поэтому будет работать на русском языке, а в 2007/2010 - это уже встроенная функция, поэтому если ее прописываем через .Formula или .FormulaR1C1, то нужно писать на английском, либо все писать на русском, но через .FormulaLocal
1
Serge 007
955 / 595 / 11
Регистрация: 11.06.2010
Сообщений: 1,345
22.03.2013, 15:32 16
Цитата Сообщение от IvanOK Посмотреть сообщение
моя ошыбка в том что удалил с той частью =
Ну наконец-то! А то всё утверждаете что работает

Цитата Сообщение от IvanOK Посмотреть сообщение
то 2003 на русском выдает нормально, а на 2010 нет.... вот и вся проблема
Вот это-то и интересно, что за косяк в 2003, что FormulaR1C1 принимается на локальном языке?
Такого быть не должно (необходимо использовать FormulaLocal), однако факт налицо. Так что в 2010 работает правильно, а в 2003 - нет
0
IvanOK
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
22.03.2013, 15:59  [ТС] 17
Serge 007,ну вы согласны с тем что даже на вашем примере есть етот косяк
0
22.03.2013, 15:59
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.03.2013, 15:59

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Вычисление функции на заданном промежутке, и построение графика этой функции
Написать блок-схему и программу вычисления функции на за- данном промежутке с шагом 0.2 и...

Вычисление значения функции с помощью разложения функции в степенной ряд
составить программу для вычисления значения функции y=1/(1+x) с помощью разложения функции в...

Функции: вычисление суммы значений Z заданной в варианте функции F(X,Y) в четырех различных точках
Написать программу, которая вычисляет сумму значений Z заданной в варианте функции F(X,Y) в...

Перевести с Pascal вычисление функции на заданном промежутке и построить график этой функции
uses crt,graphABC; function y(x:real):real; begin if x<0 then y:=x*x else if x<=2.5 then...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.