דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. פקודת DLookUp

פקודת DLookUp

מתוזמן נעוץ נעול הועבר תכנות
35 פוסטים 4 כותבים 2.7k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • clickoneC מנותק
    clickoneC מנותק
    clickone
    השיב להכוכב שלנו ב נערך לאחרונה על ידי
    #7

    @הכוכב-שלנו אמר בפקודת DLookUp:

    ב + לעשות הודעות מימין לשמאל, אישור ביטול וכד', וכך הפסיק שעושים בסוף לכתוב כותרת, הוא עושה הכל אדום.

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

    הנה דוגמא להודעה בעברית עם יישור ימין שמאל

    MsgBox "הודעה בעברית מימין לשמאל",vbMsgBoxRight+vbMsgBoxRtlReading,"כותרת בעברית"
    

    והנה עם הסוג השני שהבאתי בהודעה הקודמת + שבירת שורה

    AccessMsgBox "הודעה בעברית מימין לשמאל@עם שבירת שורה@",vbMsgBoxRight+vbMsgBoxRtlReading,"כותרת בעברית"
    

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

    AccessMsgBox "",vbMsgBoxRight+vbMsgBoxRtlReading,""
    

    אח"כ אני מוסיף את העברית בפנים

    אין טסט כמו פרודקשן.

    המייל שלי urivpn@gmail.com

    תגובה 1 תגובה אחרונה
    3
    • clickoneC מנותק
      clickoneC מנותק
      clickone
      השיב להכוכב שלנו ב נערך לאחרונה על ידי
      #8

      @הכוכב-שלנו אמר בפקודת DLookUp:

      @clickone נטרלת בכוונה את כמעט הכל?

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

      אין טסט כמו פרודקשן.

      המייל שלי urivpn@gmail.com

      תגובה 1 תגובה אחרונה
      1
      • clickoneC מנותק
        clickoneC מנותק
        clickone
        השיב להכוכב שלנו ב נערך לאחרונה על ידי
        #9

        @הכוכב-שלנו אמר בפקודת DLookUp:

        איך מציגים יותר משורה אחת של טבלה.

        Public Function ELookup(Expr As String, Domain As String, Optional Criteria As Variant, _
            Optional OrderClause As Variant) As Variant
        On Error GoTo Err_ELookup
            'Purpose:   Faster and more flexible replacement for DLookup()
            'Arguments: Same as DLookup, with additional Order By option.
            'Return:    Value of the Expr if found, else Null.
            '           Delimited list for multi-value field.
            'Author:    Allen Browne. allen@allenbrowne.com
            'Updated:   December 2006, to handle multi-value fields (Access 2007 and later.)
            'Examples:
            '           1. To find the last value, include DESC in the OrderClause, e.g.:
            '               ELookup("[Surname] & [FirstName]", "tblClient", , "ClientID DESC")
            '           2. To find the lowest non-null value of a field, use the Criteria, e.g.:
            '               ELookup("ClientID", "tblClient", "Surname Is Not Null" , "Surname")
            'Note:      Requires a reference to the DAO library.
            Dim db As DAO.Database          'This database.
            Dim rs As DAO.Recordset         'To retrieve the value to find.
            Dim rsMVF As DAO.Recordset      'Child recordset to use for multi-value fields.
            Dim varResult As Variant        'Return value for function.
            Dim strSql As String            'SQL statement.
            Dim strOut As String            'Output string to build up (multi-value field.)
            Dim lngLen As Long              'Length of string.
            Const strcSep = ","             'Separator between items in multi-value list.
        
            'Initialize to null.
            varResult = Null
        
            'Build the SQL string.
            strSql = "SELECT TOP 1 " & Expr & " FROM " & Domain
            If Not IsMissing(Criteria) Then
                strSql = strSql & " WHERE " & Criteria
            End If
            If Not IsMissing(OrderClause) Then
                strSql = strSql & " ORDER BY " & OrderClause
            End If
            strSql = strSql & ";"
        
            'Lookup the value.
            Set db = DBEngine(0)(0)
            Set rs = db.OpenRecordset(strSql, dbOpenForwardOnly)
            If rs.RecordCount > 0 Then
                'Will be an object if multi-value field.
                If VarType(rs(0)) = vbObject Then
                    Set rsMVF = rs(0).Value
                    Do While Not rsMVF.EOF
                        If rs(0).Type = 101 Then        'dbAttachment
                            strOut = strOut & rsMVF!FileName & strcSep
                        Else
                            strOut = strOut & rsMVF![Value].Value & strcSep
                        End If
                        rsMVF.MoveNext
                    Loop
                    'Remove trailing separator.
                    lngLen = Len(strOut) - Len(strcSep)
                    If lngLen > 0& Then
                        varResult = Left(strOut, lngLen)
                    End If
                    Set rsMVF = Nothing
                Else
                    'Not a multi-value field: just return the value.
                    varResult = rs(0)
                End If
            End If
            rs.Close
        
            'Assign the return value.
            ELookup = varResult
        
        Exit_ELookup:
            Set rs = Nothing
            Set db = Nothing
            Exit Function
        
        Err_ELookup:
            MsgBox Err.Description, vbExclamation, "ELookup Error " & Err.number
            Resume Exit_ELookup
        End Function
        

        מקור
        http://allenbrowne.com/ser-42.html
        זה אתר שאם אתה עם אקסס אני ממליץ מאד שתעבור עליו ועל דוגמאות הקודים אצלו.
        למדתי משם המון!

        אין טסט כמו פרודקשן.

        המייל שלי urivpn@gmail.com

        הכוכב שלנוה תגובה 1 תגובה אחרונה
        4
        • הכוכב שלנוה מנותק
          הכוכב שלנוה מנותק
          הכוכב שלנו
          השיב לclickone ב נערך לאחרונה על ידי
          #10

          @clickone ושוב אין מילים!!!!!!

          מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

          תגובה 1 תגובה אחרונה
          1
          • chagoldC מנותק
            chagoldC מנותק
            chagold
            כתב ב נערך לאחרונה על ידי
            #11

            @הכוכב-שלנו אגב, התחלת עם dlookup,אז זה פונקציה מאד איטית, וטוב להשתמש איתה רק במשהו ספציפי מאד לדוגמא בטופס שלא נורא אם יקח איזה חצי שניה - שניה, אבל כשאתה עושה משהו רציני כמו לולאות וכיו"ב, תעשה רק עם RS.

            הכוכב שלנוה תגובה 1 תגובה אחרונה
            2
            • הכוכב שלנוה מנותק
              הכוכב שלנוה מנותק
              הכוכב שלנו
              כתב ב נערך לאחרונה על ידי
              #12

              @clickone ממש תודה רבה רבה, משום מה רוב השורות נהיות אדומות, יכול להיות שזה בעיה כוללת
              (בשני המודולים)

              מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

              הכוכב שלנוה תגובה 1 תגובה אחרונה
              0
              • הכוכב שלנוה מנותק
                הכוכב שלנוה מנותק
                הכוכב שלנו
                השיב לchagold ב נערך לאחרונה על ידי
                #13

                @chagold אמר בפקודת DLookUp:

                @הכוכב-שלנו אגב, התחלת עם dlookup,אז זה פונקציה מאד איטית, וטוב להשתמש איתה רק במשהו ספציפי מאד לדוגמא בטופס שלא נורא אם יקח איזה חצי שניה - שניה, אבל כשאתה עושה משהו רציני כמו לולאות וכיו"ב, תעשה רק עם RS.

                ביקשתי גם מ@clickone תן לי כיוון מה זה RS? פונקצייה? יש לך דוגמא?

                מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

                תגובה 1 תגובה אחרונה
                0
                • הכוכב שלנוה מנותק
                  הכוכב שלנוה מנותק
                  הכוכב שלנו
                  השיב להכוכב שלנו ב נערך לאחרונה על ידי
                  #14

                  @הכוכב-שלנו אמר בפקודת DLookUp:

                  @clickone ממש תודה רבה רבה, משום מה רוב השורות נהיות אדומות, יכול להיות שזה בעיה כוללת
                  (בשני המודולים)

                  0_1528197348678_אדום.PNG

                  מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

                  clickoneC chagoldC 2 תגובות תגובה אחרונה
                  0
                  • clickoneC מנותק
                    clickoneC מנותק
                    clickone
                    השיב להכוכב שלנו ב נערך לאחרונה על ידי
                    #15

                    @הכוכב-שלנו אתה יכול למחוק או לשים בהערה את כל השורות שבאדום
                    משום מה אצלך התו של ההערה נמחק (או שאתה מחקת אותו)

                    אין טסט כמו פרודקשן.

                    המייל שלי urivpn@gmail.com

                    הכוכב שלנוה תגובה 1 תגובה אחרונה
                    1
                    • הכוכב שלנוה מנותק
                      הכוכב שלנוה מנותק
                      הכוכב שלנו
                      השיב לclickone ב נערך לאחרונה על ידי הכוכב שלנו
                      #16

                      @clickone אמר בפקודת DLookUp:

                      @הכוכב-שלנו אתה יכול למחוק או לשים בהערה את כל השורות שבאדום
                      משום מה אצלך התו של ההערה נמחק (או שאתה מחקת אותו)

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

                      מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

                      clickoneC תגובה 1 תגובה אחרונה
                      0
                      • clickoneC מנותק
                        clickoneC מנותק
                        clickone
                        השיב להכוכב שלנו ב נערך לאחרונה על ידי
                        #17

                        @הכוכב-שלנו תשים גרש בודד לפני כל שורה באדום זה יהפוך את זה להערה בקוד

                        אין טסט כמו פרודקשן.

                        המייל שלי urivpn@gmail.com

                        הכוכב שלנוה תגובה 1 תגובה אחרונה
                        0
                        • הכוכב שלנוה מנותק
                          הכוכב שלנוה מנותק
                          הכוכב שלנו
                          השיב לclickone ב נערך לאחרונה על ידי
                          #18

                          @clickone אמר בפקודת DLookUp:

                          @הכוכב-שלנו תשים גרש בודד לפני כל שורה באדום זה יהפוך את זה להערה בקוד

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

                          מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

                          clickoneC תגובה 1 תגובה אחרונה
                          0
                          • chagoldC מנותק
                            chagoldC מנותק
                            chagold
                            השיב להכוכב שלנו ב נערך לאחרונה על ידי
                            #19

                            @הכוכב-שלנו RS זה טכניקה לעבודה עם מסדי נתונים - טבלאות.
                            אני מצרף איזו תוכניתונת שעשיתי פעם לעזור לי בחישוב זמני עבודה, תבין את הפרנציפ, וכל שאלה תשאל.

                            תסתכל בREFERENCES כדי שיצרף לך את הספריה הרלוונטית

                            0_1528201926184_חישוב זמני עבודה - ריק.accdb

                            הכוכב שלנוה 2 תגובות תגובה אחרונה
                            2
                            • clickoneC מנותק
                              clickoneC מנותק
                              clickone
                              השיב להכוכב שלנו ב נערך לאחרונה על ידי clickone
                              #20

                              @הכוכב-שלנו
                              כן
                              כל שורה בצבע ירוק, היא הערה, והמהדר לא מתייחס אליה ולא מריץ אותה.
                              בVB הערה מתחילה בגרש בודד

                              '
                              

                              בשאר השפות זה בד"כ 2 לוכסנים //

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

                              אין טסט כמו פרודקשן.

                              המייל שלי urivpn@gmail.com

                              הכוכב שלנוה תגובה 1 תגובה אחרונה
                              1
                              • הכוכב שלנוה מנותק
                                הכוכב שלנוה מנותק
                                הכוכב שלנו
                                השיב לchagold ב נערך לאחרונה על ידי
                                #21

                                @chagold תודה רבה לך. אני יעבור על הכל. אבל אם אני מבין נכון הRS זה הסך הכל, נכון?

                                מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

                                chagoldC clickoneC 2 תגובות תגובה אחרונה
                                0
                                • הכוכב שלנוה מנותק
                                  הכוכב שלנוה מנותק
                                  הכוכב שלנו
                                  השיב לclickone ב נערך לאחרונה על ידי
                                  #22

                                  @clickone אמר בפקודת DLookUp:

                                  @הכוכב-שלנו
                                  כן
                                  כל שורה בצבע ירוק, היא הערה, והמהדר לא מתייחס אליה ולא מריץ אותה.
                                  בVB הערה מתחילה בגרש בודד

                                  '
                                  

                                  בשאר השפות זה בד"כ 2 לוכסנים //

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

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

                                  מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

                                  תגובה 1 תגובה אחרונה
                                  0
                                  • הכוכב שלנוה מנותק
                                    הכוכב שלנוה מנותק
                                    הכוכב שלנו
                                    השיב לchagold ב נערך לאחרונה על ידי
                                    #23

                                    @chagold אמר בפקודת DLookUp:

                                    @הכוכב-שלנו RS זה טכניקה לעבודה עם מסדי נתונים - טבלאות.
                                    אני מצרף איזו תוכניתונת שעשיתי פעם לעזור לי בחישוב זמני עבודה, תבין את הפרנציפ, וכל שאלה תשאל.

                                    תסתכל בREFERENCES כדי שיצרף לך את הספריה הרלוונטית

                                    0_1528201926184_חישוב זמני עבודה - ריק.accdb

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

                                    מעוניין לפעול בשביל תחבורה ציבורית! על כל רעיון תפנו אלי!!!

                                    chagoldC תגובה 1 תגובה אחרונה
                                    0
                                    • chagoldC מנותק
                                      chagoldC מנותק
                                      chagold
                                      השיב להכוכב שלנו ב נערך לאחרונה על ידי
                                      #24

                                      @הכוכב-שלנו לא, זה ראשי תבות של RecordSet שזה הטכניקה.

                                      תגובה 1 תגובה אחרונה
                                      0
                                      • chagoldC מנותק
                                        chagoldC מנותק
                                        chagold
                                        השיב להכוכב שלנו ב נערך לאחרונה על ידי
                                        #25

                                        @הכוכב-שלנו אמר בפקודת DLookUp:

                                        @chagold אמר בפקודת DLookUp:

                                        @הכוכב-שלנו RS זה טכניקה לעבודה עם מסדי נתונים - טבלאות.
                                        אני מצרף איזו תוכניתונת שעשיתי פעם לעזור לי בחישוב זמני עבודה, תבין את הפרנציפ, וכל שאלה תשאל.

                                        תסתכל בREFERENCES כדי שיצרף לך את הספריה הרלוונטית

                                        0_1528201926184_חישוב זמני עבודה - ריק.accdb

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

                                        למה לא?

                                        תגובה 1 תגובה אחרונה
                                        1
                                        • clickoneC מנותק
                                          clickoneC מנותק
                                          clickone
                                          השיב להכוכב שלנו ב נערך לאחרונה על ידי
                                          #26

                                          @הכוכב-שלנו
                                          recordset וביקצור RS זו שיטה לעבור על הטבלה או חלק ממנה בקוד.
                                          הרעיון הכללי הוא ככה:
                                          אתה מצהיר על אובייקט recordset
                                          וטען אליו נתונים
                                          ואז אתה יכול לעבור על כל מה שקילת בלופ או בכל דרך אחרת.
                                          לופ=ריצה בחזרה מספר פעמים שאתה מגדיר. לדוגמה, הקוד ירוץ כמספר הרשומות שיש בטבלה, וכל פעם המשתנה יחזיק את הרשומה הנוכחית.
                                          ואז, אחרי שטענת את הנתונים, אתה יכול לבצע כל מיי פעולות
                                          לדוגמא, לעדכן נתונים, למחוק, ועוד.
                                          התייחסות לשדה בטבלה יכלה להעשות ב2 דרכים.

                                          rs!username
                                          או

                                          rs("username)
                                          

                                          אם יש לך רווח בשם השדה, או שהשדת שלך בעברית אז תשתמש באפשרות השנייה

                                          (המלצה שלי, לא לעשות לא עברית ולא רוו בשמות השדות והטבלאות. זה יקשה עליך את החיים. במיוחד אם אתה עובד עם קוד.....)

                                          אין טסט כמו פרודקשן.

                                          המייל שלי urivpn@gmail.com

                                          הכוכב שלנוה תגובה 1 תגובה אחרונה
                                          2

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

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום