powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вопрос!
5 сообщений из 5, страница 1 из 1
Вопрос!
    #33770396
Feanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем тут такое задание, не могу реализовать никак, прошу помощи )))
Суть состоит в том, чтобы в TextBox1 (текстовом окне) отображалась информация в виде "Да" или "Нет" а это зависит от того, будет ли ячейка B1<B5 и наоборот, я поступил так:

Private Sub TextBox1_Change()
If Cells(1, 2) < Cells(5, 2) Then
TextBox1.Text = "Yoh"
ElseIf Cells(1, 2) > Cells(5, 2) Then
TextBox1.Text = "No"
End If
End Sub


Но что-то не получется, я знаю, что я ньюб, но всё же, кажется что проблема в Private Sub TextBox1_Change(), вроде так, помогите найти аналог, чтоб всё грамотно выводилось и обьсните пожалуйста )))

Заранее благодарен!
...
Рейтинг: 0 / 0
Вопрос!
    #33770462
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вам нужно разместить код в обработчике листа, а не TexBox .
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub Worksheet_Change(ByVal Target As Range)
    If Cells( 1 ,  2 ) < Cells( 5 ,  2 ) Then
        TextBox1.Text = "Yoh"
    ElseIf Cells( 1 ,  2 ) > Cells( 5 ,  2 ) Then
        TextBox1.Text = "No"
    End If
End Sub
...
Рейтинг: 0 / 0
Вопрос!
    #33770482
Feanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
big-duke спасибо за макрос, но я так уже пытался, он выдаёт ошибку - Ambiguous name detected : Woerksheet_Change
Т.к. у меня есть ещё один макрос, с которым это вот надо было обьединить, он ищет процент по моему и выглядит так:


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$4" Then
SpinButton1.Value = CInt(100 * Range("B4").Value)
End If
End Sub


Нужно как то синтезировать то, что ты написал, с этим?
...
Рейтинг: 0 / 0
Вопрос!
    #33770485
Feanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ААААААААААА, всё вставил, всё работает, выглядит так:


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$4" Then
SpinButton1.Value = CInt(100 * Range("B4").Value)
End If
If Cells(1, 2) < Cells(5, 2) Then
TextBox1.Text = "Yoh"
ElseIf Cells(1, 2) > Cells(5, 2) Then
TextBox1.Text = "No"
End If
End Sub


Ещё раз спасибо, и если не трудно, посните вот эту строку:


Private Sub Worksheet_Change(ByVal Target As Range)

И оператор ByVal
...
Рейтинг: 0 / 0
Вопрос!
    #33771508
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FeanorЕщё раз спасибо, и если не трудно, посните вот эту строку:

Private Sub Worksheet_Change(ByVal Target As Range)

И оператор ByVal

Change - это событие объекта Worksheet, которое генерируется при изменении данных.

При передаче параметра с помощью ключевого слова ByVal (передача параметра по значению), в процедуру попадает не сама переменная, а ее значение, в отличие от передачи по ссылке.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вопрос!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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