powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / идентификатор
26 сообщений из 26, показаны все 2 страниц
идентификатор
    #32753666
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
привет всем!
на форме у меня есть поля с идентификаторами Ном1,Ном2...НомN
При выборе в другом поле(идентификатор Кол) числа должны отборазиться только поля Ном1,Ном2,...НомК,где К<=Кол
В модуле при обновлении поля с идентификатором Кол пишу следующее

Option Compare Database
Option Explicit
..........
Dim i As Integer
Dim Ном As String
..............
Private Sub Кол_AfterUpdate()
i = 11
Ном = "Ном"
While i >= Кол
к = (Ном + Str(i))
к.Visible() = False 'ошибка на эту строку
i = i - 1
Wend
End Sub

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

Код: plaintext
1.
2.
 .........
 Me.Controls(Ном & Str(i)).Visible = False
 .........
...
Рейтинг: 0 / 0
идентификатор
    #32753684
Нерюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какой тип у к?
...
Рейтинг: 0 / 0
идентификатор
    #32753687
Нерюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Должно быть me.controls(к).Visible() = False, если к - строковое имя контрола
...
Рейтинг: 0 / 0
идентификатор
    #32753688
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 нерюх
у к тип строка
...
Рейтинг: 0 / 0
идентификатор
    #32753690
Нерюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и не к = (Ном + Str(i)), а к = ("Ном" + Str(i))
...
Рейтинг: 0 / 0
идентификатор
    #32753692
Нерюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хосе , а что, у строки есть свойство Visible?
...
Рейтинг: 0 / 0
идентификатор
    #32753693
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нерюхи не к = (Ном + Str(i)), а к = ("Ном" + Str(i))

Код: plaintext
1.
2.
3.
4.
Private Sub Кол_AfterUpdate()
i =  11 
Ном = "Ном"
...
...
Рейтинг: 0 / 0
идентификатор
    #32753695
Нерюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kelme Удачный идентификатор, нечего сказать :-)
...
Рейтинг: 0 / 0
идентификатор
    #32753696
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 нерюх
я новичок в этом деле не подскажешь какой тип должен быть чтобы можно было видимость использовать?
...
Рейтинг: 0 / 0
идентификатор
    #32753703
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Кол_AfterUpdate()
i =  11 
Ном = "Ном"
While i >= Кол

 Me.Controls(Ном & Str(i)).Visible = False

 i = i -  1  
Wend
End Sub

вот тебе рабочий вариант.
...
Рейтинг: 0 / 0
идентификатор
    #32753710
Нерюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хосе , я уже написал, как должно быть с моей точки зрения, смотри внимательнее. У объектов семейства controls есть свойство visible, а не у строки, если это не бегущаяя строка.
...
Рейтинг: 0 / 0
идентификатор
    #32753716
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 kelme
спасибо так и сделал-но выдается ошибка
Ошибка выполнения 2465
Приложению MS Access не удается найти поле 'Ном11 ',указанное в выражении,
имя поля было задано с ошибка либо поле переименовани или удалено

Хотя поля сшествуют.Формат поля-основной
...
Рейтинг: 0 / 0
идентификатор
    #32753718
Нерюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ищи
...
Рейтинг: 0 / 0
идентификатор
    #32753722
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя названия полей по русски написаны?
Если так, то:
Код: plaintext
Me.Controls("[Ном" & Str(i) & "]").Visible = False
...
Рейтинг: 0 / 0
идентификатор
    #32753729
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Келме
Спасибо Келме,
названия полей написаны по русски,вставил твой код,но опять таже ошибка.
мне уже стыдно))
...
Рейтинг: 0 / 0
идентификатор
    #32753734
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, у меня там латинскими буквами написано, напиши Ном по русски ;)
...
Рейтинг: 0 / 0
идентификатор
    #32753738
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Келме
я уже на форме исправил на латинские буквы n1,n2,n3....
и в коде написал
Me.Controls("[n" & Str(i) & "]").Visible = False

таже ошибка
((неужели я такой тупой???
...
Рейтинг: 0 / 0
идентификатор
    #32753746
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
переименуй их в 1,2,3 и т.д
и попробуй так:

Код: plaintext
 Me.Controls(Str(i)).Visible = False
...
Рейтинг: 0 / 0
идентификатор
    #32753752
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Келме

опять эта ошибка поле '11' не найдено и т.д(
...
Рейтинг: 0 / 0
идентификатор
    #32753754
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а оно у тебя точно есть???
...
Рейтинг: 0 / 0
идентификатор
    #32753763
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я только что удалил их все и заново создал с идентификаторами 1,2,3,4...
та же ошибка
...
Рейтинг: 0 / 0
идентификатор
    #32753784
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
млинннннн ну че делать - ?
...
Рейтинг: 0 / 0
идентификатор
    #32753863
Фотография ДАВИД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хосепривет всем!
Option Compare Database
Option Explicit
..........
Dim i As Integer
Dim Ном As String
..............
Private Sub Кол_AfterUpdate()
i = 11
Ном = "Ном"
While i >= Кол
к = (Ном + Str(i))
к.Visible() = False 'ошибка на эту строку
i = i - 1
Wend
End Sub


Попробуйте
к = ("Ном" + Trim(Str(i)))
Me!к.Visible() = False
...
Рейтинг: 0 / 0
идентификатор
    #32753865
Фотография ДАВИД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДАВИД Хосепривет всем!
Option Compare Database
Option Explicit
..........
Dim i As Integer
Dim Ном As String
..............
Private Sub Кол_AfterUpdate()
i = 11
Ном = "Ном"
While i >= Кол
к = (Ном + Str(i))
к.Visible() = False 'ошибка на эту строку
i = i - 1
Wend
End Sub


Попробуйте
к = ("Ном" & Trim(Str(i))) - Правильнее.
Me!к.Visible() = False
...
Рейтинг: 0 / 0
идентификатор
    #32753931
Хосе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо Нерюх, Келме,Давид
все дело в пробелах)
Me.Controls("n" & Trim(Str(i))).Visible = False
Работает!!!
...
Рейтинг: 0 / 0
26 сообщений из 26, показаны все 2 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / идентификатор
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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