עזרה עזרה עזרה

amirrl

New member
עזרה עזרה עזרה

כתבתי טופס באקסס שעובד כך - אם בשורה מסויימת, הערך בעמודה מס' 1 הוא 1, אז באותה שורה עמודות 2,3,4 זמינות לכתיבה ועמודה 5 לא. אם הוא לא 1, אז 2,3,4 לא זמינות ו-5 כן. כתבתי את זה בVBA כך-
Private Sub Manuf_AfterUpdate() If Manuf.Value = 1 Then Typeibm.Enabled = True Model.Enabled = True Serial.Enabled = True Zserial.Enabled = False Else Zserial.Enabled = True Typeibm.Enabled = False Model.Enabled = False Serial.Enabled = False End If End Sub​
אבל הקוד הזה גורם לכך, שאם בשורה מסויימת אני משנה את הערך ל-1, העמודות הרלוונטיות משתנות *לכל אורכן*, בכל השורות בטופס... איך אני גורם לכך ששינוי בשורה X ישפיע אך ורק על אותה השורה?!? HELP!! אמיר.
 

amirrl

New member
ושאלה נוספת מאותה העבודה בSQL

אני רוצה שאחת השאילתות שלי תוגבל ע"י קריטריון מסויים, אבל אני רוצה לקבל את הקרטריון הזה מבחוץ (לדוגמא, בטופס מסויים יהיו לי 2 כפתורים, שלחיצה על אחד מהם תעלה את השאילתא עם קרטריון א' והשני עם קרטריון ב'). איך אני משנה את סעיף הWHARE בשאילתא כדי שיתקבל מבחוץ? ואיך אני שולח לו את הנתון הזה מטופס חיצוני? תודה.
 

א ו ר ח ת

New member
השאלה איך אתה קורא לשאילתה

ניתן לבצע את זה בכמה דרכים. אחד לכתוב בשאילתה עצמה שהקרטריון מגיע מהטופס. (משהו שאני לא אוהבת כל כך כי זה מגביל את השאילתה לעבוד רק מול הטופס הזה) או ליצור טופס מבוסס על השאילתה ואז לפתוח את הטופס לפי פרמטר משותף (תראה דרך הויזרד איך הוא עושה את זה)
 

א ו ר ח ת

New member
מממ..

אי אפשר לעשות את זה ממש כמו שרצית, אבל מה שהייתי ממליצה לך לעשות זה ככה. לפי הערך אתה יכול לשנות את הצבע, זה אתה יכול לעשות בעיצוב מותנה. בכל פקד כזה תבדוק את הערך ואז תתן אפשרות לעריכה או אל תיתן.
 

amirrl

New member
תודה, ושאלה נוספת-

אורחת, ממש עזרת לי, תודה. ולשאלה נוספת- נתחיל בקוד (בVBA) -
Dim stDocName As String Dim sql As String Dim X As Long X = LIST.ListIndex sql = "(((Main.Costumer) = " + X + "))" DoCmd.OpenQuery stDocName, acNormal, acReadOnly DoCmd.ApplyFilter , sql​
עכשיו, מאיזושהי סיבה כנראה שהמשתנה X לא מתאים למקומו, כי אני מקבל הודעת TYPE MISMATCH... איך אני גורם למשתנה לקבל את האינדקס של הרשימה LIST ולהיות מוזן כהלכה במקום? תודה מראש!
 
למעלה