איך ליצור טופס הזנת נתונים כפול באקסל



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

    כיצד נקרא דבר זה בחיפוש גוגל?
    אשמח למידע או לקישור מתאים


  • ניהול

    איך אתה עושה את הטופס?



  • @dovid
    לא הייתי כאן הרבה זמן
    הוספתי בטופס (מאקרו) כרטיסיות
    אני רוצה שאם הכניס ריהוט יהיה נעול הכרטיסיה של חשמל
    ואם הכניס חשמל יהיה נעול הכרטיסיה של ריהוט
    0_1534794769047_ללא שם.png
    אשמח לעזרה


  • ניהול

    אני לא יודע איפה אתה בתכנות, אני מבין שבצעדים ראשונים.
    אני אענה לך נקודתית אף שזה לא דרך, אתה חייב ללמוד איך בצורה יותר כללית כדי להבין איך עובד, לא כל פעם שאלה על הנקודה בה אתה אוחז.
    לאלמנטים ששמת בטופס יש "אירועים", שזה אומר שגרות קוד עם שמות מוגדרים מראש, שמתבצעים כשX יקרה לאלמנט. למשל לכפתור יש מתודה Button1_Click, שתופעל כשילחצו על הכפתור.
    בדומה לכך ל"תיבת רשימה" - ComboBox יש אירוע ראשי (לחיצה פעמיים על האלמנט בחלון העיצוב יוצרת את הקוד לאירוע ראשי של אלמנט), ששמו Change, הוא מופעל בעת שינוי הערך (הן על ידי בחירה מרשימה הן ע"י הקלדה ידנית).
    שם תוכל לכתוב קוד דומה:

    Private Sub ComboBox1_Change()
        If ComboBox1.Text = "123" Then
            MultiPage1.Pages(0).Enabled = False
        Else
            MultiPage1.Pages(0).Enabled = True
        End If
    End Sub
    

    בצורה קצרה יותר ניתן להמיר את כל התנאי הארוך לשורה בודדת:

    Private Sub ComboBox1_Change()
        MultiPage1.Pages(0).Enabled = ComboBox1.Text = "123"
    End Sub
    

    הMultiPaghe זה הכרטסת, והמאפיין Pages מתייחס לאוסף הכרטסות שבה. המספר אפס מייצג את הראשונה. המאפיין Enable משמעותו זמינות - האם האלמנט זמין או אפרפר - לא זמין.



  • @dovid תודה על מה שעניתי לי (למרות הטרחה בדבר)

    אני יודע איך עובד הרעיון של תכנות, משתנים ולולאות וכו

    אך מה שחסר לי הוא מילון בסגנון של מילון אבן שושן, כלומר הפקודה, והמשמעות שלה, והפרמטרים האפשריים שלה

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

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

    אשמח אם תוכל להחכים אותי היכן יש מילון הנ"ל שמנוסח בצורה טובה


  • חשמל ואלקטרוניקה תכנות

    @מתמחה-במחשבים
    קוראים לזה: תיעוד.
    אתה יכול להעזר בעזרה של אקסס (F1), בגרסאות הישנות, זה היה יותר מוצלח, בעברית נ"ל.
    כיום זה באנגלית, ואולי אפי' זה לא.

    יש גם תיעוד באינטרנט.


  • ניהול

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



  • בהמשך למה שכתבת ראיתי את הספר הזה
    0_1535279706551_2296264e-a52e-4ad0-8d01-8adc61d76250-image.png
    אני חושב לקנות אותו, אשמח לדחיפה בצורת המלצות ממישהו שמכיר את זה



  • @מתמחה-במחשבים
    נראה יקר ביחס לעמודים שיש שם

    תנסה אולי להתחיל עם זה
    http://excel.kova.co.il/קורסי-excel-למתקדמים-חינם/קורס-מאקרו-excel-vba-חינם/


  • ניהול

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



  • @clickone @dovid
    יש לכם מקורות נוספים להציע כדי ללמוד VBA?

    אני מעדיף קריאה, לאו דווקא בצורת ספר, אלא גם דפי אינטרנט


 

בא תתחבר לדף היומי!