|
Тема
|
VBA - Access
|
|
Автор | Pitanka (Нерегистриран) |
Публикувано | 13.07.04 14:24 |
|
Nqkoi bi li mi obqsnil kak moga chrez VBA da upravlqvam kontrolite vyv forma na Access po sledniq nachin:
Kogato izbera stoinost ot combo-box v dadena forma, na drug combo-box da se prisvoqvat stoinostite svyrzani s izbranata ot pyrviq combo...Naprimer ako izbera ime na proekt ot tablica proekti, v sledvashtiq combo da mi se pokazvat zadachite samo ot tozi proekt ( te se izvlichat ot tablica TASKS)?
| |
|
VBA значи? хмм...не би трябвало да се различава...много
while rs.eof <> true
if combo1.text = rs.fields(i).value then
combo2.text=rs.fields(i).value
end if
rs.movenext
wend
'където i ти е колоната в таблицата
' rs ти е recordset-a и трябва да го декларираш
'това е при условие ,че проекта и задачите ти са в една таблица
| |
Тема
|
Re: VBA - Access
[re: ToViDebne]
|
|
Автор | Pitanka (Нерегистриран) |
Публикувано | 13.07.04 18:16 |
|
Ne, ima edna tablica za proekta i negovite atributi i druga tablica za zadachite, koqto se vryzva s tablicata za proekti po Project ID(Primary key za Projects ) - to syshtestvuva i v dvete tablici...t.e v ramkite na edin proekt ima mnogo zadachi...Primary key za TASKS (tablicata sys zadachite) e Project ID+Task ID....V takyv sluchai?
| |
|
Пич, изяснявай се малко по-точно.
В момента нямам нито VB, нито Access, но ще се опитам да ти помогна.
Значи ако съм разбрал правилно какъв ти е проблема, трябва да направиш следното. В първото комбо (за проектите) когато слагаш имената на проектите в свойството ItemData (мисля че така беше) слагаш и ID-то на проекта. Така когато юзера кликне ще го имаш наготово, а не да го търсиш пак.
И след това на свойството Click или Change (ти ще си прецениш по-добре) слагаш код подобен на този, който ти е дал колегата, за да ти запълни второто комбо. Обаче ще отвориш рекордсета с заявка SELECT, включваща INNER JOIN между двете таблици и WHERE клауза равна на ID-то на проекта (което вече имаш и ще вземеш от свойството ItemData на комбобокса). Така че да ти изтегли само тасковете, които са свързани към конкретния проект.
SELECT може и аксеса да ти го генерира, след като си му задал релейшъните между таблиците. Аз така правя.
Вярвам, че си ме разбрал!
А ако не си надявам се, че някой ще ти обясни и по-подробно.
Успех!
Бии, за да те уважават!
| |
|
|
|
|