powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / помогите исправить функцию, чтобы она работала
25 сообщений из 51, страница 1 из 3
помогите исправить функцию, чтобы она работала
    #34796297
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
помогите исправить функцию, чтобы она работала....
Модератор:
У вас уже 4 топика на двух форумах об одном и том же.
Вы бы определились. Мне определиться будет проще.
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34796664
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kleraпомогите исправить функцию, чтобы она работала....
Модератор:
У вас уже 4 топика на двух форумах об одном и том же.
Вы бы определились. Мне определиться будет проще.
а как она должна работать?
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34796692
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мне просто срочно нужна помощь....
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797157
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kleraмне просто срочно нужна помощь....Те, кто помогает в решении проблем на этом форуме, весьма занятые люди, которые также ценят свое время как и Вы.
То, что у вас написано в коде, не позволяет понять, что Вы хотите получить в результате, поэтому я и попросил Вас написать словами, как хотите, чтоб программа работала.
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797234
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я бы хотела, чтобы при нажатии на кнопку, запускалась функция, а тело функии бралось из ячейки
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797269
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ваша функция, хоть и коряво (не понятно, зачем ей нужны параметры и зачем используется функция CVar ), работает, а вот формула в ячейке - это нонсенс если в книге не существует именованных диапазонов (формул) k и t :

=И(k=1; t=2)

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797303
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
критиковать ВСЕ мастера
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797480
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то мне подсказывает, что с такой реакцией на анализ твоего примера с указанием ошибок и при полном отсутсвии объяснения конкретной задачи, ты долго будешь ждать ответа.

Последний раз пытаюсь помочь твоей беде:

1) поскольку твоя формула говорит о полном непонимании принципов использования в них переменных, попробуй описать задачу средствами тебе доступными.

2) поскольку твоя функция говорит о полном непонимании назначения и принципов действия пользовательских функций, а также типов данных, попробуй описать задачу средствами тебе доступными.

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797540
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Klera, Вас особо и не критикуют, мне лично даже сложно понять, в чем вы ошиблись, потому, что неясно, что хотели сделать, все смешалось :). Вам уже три раза предлагают разъяснить задачу.
Воспользуйтесь тем, что Вам уже два раза вам предлагает свою помощь MVP – более квалифицированного ответа вы здесь не получите.
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797620
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробую сформулировать зададачу:

есть лист1 Excel, где есть кнопка, нажав на которую, выполняется
s = uslovie(1, 2, 3)
то есть функция с параметрами (1,2,3), то есть st=1 k=2 l=3

Function uslovie(st As Integer, k As Boolean, l As Boolean)
Dim t
t = st

If CBool(Evaluate(Лист1.Cells(2, 1).Value)) Then
MsgBox ("работает условие")
End If
End Function

в Лист1.Cells(2, 1).Value написано t=0, и при нажатии на кнопку функция мне выдает сообщение работает условие. что НЕ верно, так как st=1 что не равно 0. мне надо как то изменить функцию, чтобы она работала....
помогите кто знает
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797711
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Явно перепутаны мухи и катлеты.
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797756
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может Вы хотели что-то вроде этого?
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797812
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Klera...st=1 k=2 l=3...
...st As Integer, k As Boolean, l As Boolean...Boolean это True/False, а ты присваиваешь k - 2 (Integer) и l - 3 (Integer)


Klera...Dim t
t = st...Если ты хочешь переменную типа Variant, то зачем декларируешь st как Integer в параметрах? Да еще вводишь дополнительную переменную расходующую память.


Klera...CBool(Evaluate(Лист1.Cells(2, 1).Value))Каково назначение функции CBool и метода Evaluate в этой строке?


Klera...в Лист1.Cells(2, 1).Value написано t=0...В твоей книге нет именованного диапазона или формулы с именем t, а значит ячейка Лист1.Cells(2, 1) будет всегда содержать ошибку.


Klera, ну серьезно, ты читаешь то, что пишешь?

Поскольку ты не желаешь переходить на простой русский язык, а с пьяной настойчивостью продолжаешь использовать малознакомый тебе язык формул и VBA, то я оставляю надежду что-либо понять.

При этом, мне не хотелось бы тебя оставлять один на один с этой проблемой, поэтому вешаю свою догадку.

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797818
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пардон, файл отвалился.

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797857
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vbaproможет Вы хотели что-то вроде этого?

может быть записано любое условие, как например isnull(t)
или t>0
Тогда не работает(((
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797893
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KL (XL)пардон, файл отвалился.

KL
[MVP - Microsoft Excel]

Это совсем не то что мне надо, но я не знаю как еще обьяснить, спасибо за тепрение,
по простому что мне надо

Код: plaintext
1.
2.
3.
function(s as integer,l as integer)
if лист1.cells( 1 , 1 ).value then ' если выполняется условие считанное с ячейки
msgbox("работает") 
end if
в ячейке лист1.cells(1,1).value может быть любое условие, как например isnull(l) или s>0
и не обязательно что условие будет на оба параметра, может только на один из параметров

ну как еще обьяснить...
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34797999
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
насколько я понял уважаемая Klera хочет хранить в ячейках условия для выполнения некоторой функции
т.е данная ф-ция - это некоторый интерпритатор

т.е к примеру
пусть в ячейке А1 записано к=0
а в ячейке А2 - к <> 0

если вызвать функцию и передать ей А1
то в теле ф-ции должно выполнится условие
If k=0...

если вызвать функцию и передать ей А2
то в теле ф-ции должно выполнится условие
If k<>0...

Это похоже на ф-цию Eval, но не совсем


I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34798019
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HandKotнасколько я понял уважаемая Klera хочет хранить в ячейках условия для выполнения некоторой функции
т.е данная ф-ция - это некоторый интерпритатор

т.е к примеру
пусть в ячейке А1 записано к=0
а в ячейке А2 - к <> 0

если вызвать функцию и передать ей А1
то в теле ф-ции должно выполнится условие
If k=0...

если вызвать функцию и передать ей А2
то в теле ф-ции должно выполнится условие
If k<>0...

Это похоже на ф-цию Eval, но не совсем


I Have Nine Lives You Have One Only
THINK!

Хоть кто то меня понимает, да именно это я хочу, но как это сделать???
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34798027
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
причем условие может быть любое, например isnull(k) and k in (1,2)
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34798032
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не уверен, но единственная возможность создание кода на лету
я с этим не сталкивался

НО здесь на форуме это уже обсуждалось
так что в ПОИСК



I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34798042
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Klera KL (XL)пардон, файл отвалился.

KL
[MVP - Microsoft Excel]

Это совсем не то что мне надо, но я не знаю как еще обьяснить, спасибо за тепрение,
по простому что мне надо

Код: plaintext
1.
2.
3.
function(s as integer,l as integer)
if лист1.cells( 1 , 1 ).value then ' если выполняется условие считанное с ячейки
msgbox("работает") 
end if
в ячейке лист1.cells(1,1).value может быть любое условие, как например isnull(l) или s>0
и не обязательно что условие будет на оба параметра, может только на один из параметров

ну как еще обьяснить...

В таком случае, как я уже говорил, корень зла не в функции (сработала бы и первая), а в формуле в ячейке [A1]. Единственный способ записать уравнение в ячейке Excel используя переменную ввиде буквы это создав именованный диапазон или формулу (меню Вставка-Имя-Присвоить... (по-моему я это говорю уже в третий раз). Во всех остальных случаях выражения

=isnull(l)
=s>0
=OR(t=1;k=2;l=3)

и т.д. дадут ошибку #NAME (#ИМЯ), т.к. Excel будет думать, что l, s, t, k это функции, именованный диапазон или именованная формула, но будет не в состоянии распознать их.

Кстати, возвращаясь к твоей последней функции (и это тоже в третий раз):

Код: plaintext
1.
2.
3.
function(s as integer,l as integer)
     if лист1.cells( 1 , 1 ).value then ' если выполняется условие считанное с ячейки
     msgbox("работает") 
     end if

параметры s as integer,l as integer ей абсолютно не нужны - она их никак не использует

и вообще ей незачем быть функцией так как значений она тоже не возвращает

в итоге имеем:

Код: plaintext
1.
2.
Sub uslovie()
     If Лист1.Cells( 1 , 1 ) then MsgBox("работает") 
End Sub

ну максимум:

Код: plaintext
1.
2.
3.
4.
5.
Sub uslovie(cell As Range)
     If cell.Value then MsgBox("работает") 
End Sub
Sub Test()
     uslovie Лист1.Cells( 1 , 1 )
End Sub

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34798043
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HandKotне уверен, но единственная возможность создание кода на лету
я с этим не сталкивался

НО здесь на форуме это уже обсуждалось
так что в ПОИСК



I Have Nine Lives You Have One Only
THINK!

я сегодня искала весь день, и ничего не нашла.
Если есть ссылка буду признательна
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34798057
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
посмотрите здесь




I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34798068
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если то то ищите по ключевому слову InsertLines



I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
помогите исправить функцию, чтобы она работала
    #34798164
Klera
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HandKotесли то то ищите по ключевому слову InsertLines



I Have Nine Lives You Have One Only
THINK!

прочитала, но не знаю как применить к моему примеру? как написать что InsertLines применяется для ячейки.....

????
...
Рейтинг: 0 / 0
25 сообщений из 51, страница 1 из 3
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / помогите исправить функцию, чтобы она работала
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]