Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Поле со списком
 
 автор: Diamand   (13.05.2010 в 14:41)   личное сообщение
17 Кб.
 
 

Здравствуйте.
помогите плиз решить такую вот проблему:
Создал доп. таблицу и ввёл в неё значения , при выборе значения из списка должна открываться таблица но выдаёт ошибку Else without if при выборе значения


Private Sub ПолеСоСписком0_AfterUpdate()
If ПолеСоСписком0 = 1 Then DoCmd.OpenTable "Белая офисная бумага", acViewNormal, acEdit
Else
If ПолеСоСписком0 = 2 Then DoCmd.OpenTable "Цветная офисная бумага", acViewNormal, acEdit
End If
End If
End Sub


хотя если удалить


Else
If ПолеСоСписком0 = 2 Then DoCmd.OpenTable "Цветная офисная бумага", acViewNormal, acEdit
End If
End If


то при выборе значения 1 всё раб таблица открывается

2. как организовать выбор выбор текстового варианта например место


If ПолеСоСписком0 = 2

допустим


If ПолеСоСписком0 = бумага

бд прикреплена

  Ответить  
 
 автор: Lukas   (13.05.2010 в 15:22)   личное сообщение
 
 

Из штатной справки:


If...Then...Else Statement

Conditionally executes a group of statements, depending on the value of an expression.

Syntax

If condition Then [statements] [Else elsestatements]

Or, you can use the block form syntax:

If condition Then
[statements]

[ElseIf condition-n Then
[elseifstatements] ...

[Else
[elsestatements]]

End If

  Ответить  
 
 автор: Diamand   (13.05.2010 в 16:05)   личное сообщение
 
 

что то не совсем понял свою ошибку можете указать её на моём примере

пжаласта

  Ответить  
 
 автор: osmor   (13.05.2010 в 16:11)   личное сообщение
 
 

Private Sub ПолеСоСписком0_AfterUpdate()
If ПолеСоСписком0 = 1 Then 
     DoCmd.OpenTable "Белая офисная бумага", acViewNormal, acEdit
Else
       If ПолеСоСписком0 = 2 Then 
          DoCmd.OpenTable "Цветная офисная бумага", acViewNormal, acEdit
       End If
End If
End Sub 

  Ответить  
 
 автор: Diamand   (13.05.2010 в 16:39)   личное сообщение
 
 

спасибо osmor

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

что то вроде


If ПолеСоСписком0 = "белая бумага" Then
      DoCmd.OpenTable "Белая офисная бумага", acViewNormal, acEdit


пробовал так не выходит

  Ответить  
 
 автор: Explorer   (13.05.2010 в 16:45)   личное сообщение
 
 

а на желтую бумагу отдельная таблица на синюю отдельная на красную отдельная

уныло

белый - это тоже цвет если чо

  Ответить  
 
 автор: kot_k_k   (14.05.2010 в 09:07)   личное сообщение
 
 

ПолеСоСписком0 - как правило равно какому либо коду (цифра), а пользователь видит столбец(ы) которые к нему присоединены.

поэтому


ПолеСоСписком0 = "белая бумага"


может выдавать ошибку о несовместимости или че то подобное, а вот

ПолеСоСписком0.Column(1) = "белая бумага"

- имеет место быть.

Explorer прав зачем делать формы на каждую бумагу - если форма от формы отличается цветом (соответствующий бумаге) то при загрузке формы в параметрах это легко задать

  Ответить  
 
 автор: Diamand   (14.05.2010 в 14:58)   личное сообщение
 
 

пасибки взвешу всё выше сказанное

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList