כללי קובץ אקסס למס"ב

מחשבים ותוכנות > תוכן מקצועי

<<< פרויקט מיוחד - סיכום תשפ"א בקהילת הכתיבה >>>
'מה כבר עשינו?' - פרויקט סיכום השנה - וואו. איזו שנה שזו הייתה, תשפ"א. היה לנו בחירות, היו חילופי שלטון בישראל, בארה"ב ובאירן, הייתה קורונה...
אוטומציה עסקית שתניב לכם הרבה כסף!
אם יש משהו מיוחד במכללת פרוג ובמנהל המוערך שלו זה בעיקר היכולת לזהות מגמות בשוק צעד אחד לפני כולם. בהיסטוריה של פרוג נפתחו כמה קורסים שרבים...
הקמפיין האדיר להרמת קרן הזוה"ק בעולם - מגיע לפעילות שיא בימים אלה
חיים קוטלר אחרי הכנות קדחתניות וערבי רתימה סוחפים, עם מאות שגרירים נאמנים ונמרצים, הקמפיין האדיר 'מאירים בקדושה - נושאים בעול הפצת הזוה"ק בעולם'...
שמחונים ממליצה: שש מתנות נהדרות לראש השנה ולחגי תשרי
מציאות החיים ההפכפכה של התקופה התקופה האחרונה מבלבלת את כולנו. אף אחד לא יודע אם נחגוג את החג ביחד עם המשפחה המורחבת או לבד עם המשפחה הגרעינית, אם...

moishy

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

בהצלחה
 

קבצים מצורפים

רייצ'ל PA

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

moishy

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

בנוסף, בנק HSBC (מס' 23) לא ניתן בשום אופן להזין מספר חשבון. בדקתי במודולים, בנק 23 לא קיים בכלל....
במודולים הוא לא קיים בגלל שמס"ב לא פרמו בדיקת חוקיות לבנק הזה
 

רייצ'ל PA

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

moishy

משתמש סופר מקצוען
מנוי פרימיום
mdlValidations

קוד:
Public Function fValidateBankAccount(lngBankNumber As Long, _
    lngBranch As Long, _
    lngAccount As Long) As Boolean
    fValidateBankAccount = False

    Dim lngRequiredAccountLength As Long
    Dim lngTotal As Long

    Dim strArrayAccount() As String
    Dim strArrayBranch() As String

    Dim strAccount As String
    Dim strBranch As String

    Select Case lngBankNumber
        Case 10, 13, 34
            lngRequiredAccountLength = 8
        Case 12, 4
            lngRequiredAccountLength = 6
        Case 11, 17
            lngRequiredAccountLength = 9
        Case 20
            lngRequiredAccountLength = 6
        Case 31, 52
            lngRequiredAccountLength = 9
        Case 9
            lngRequiredAccountLength = 9
        Case 22
            lngRequiredAccountLength = 9
        Case 46
            lngRequiredAccountLength = 9
        Case 14
            lngRequiredAccountLength = 9
    End Select

    If lngBankNumber <> 54 And lngBankNumber <> 23 Then
        strAccount = String(lngRequiredAccountLength - Len(CStr(lngAccount)), "0") & CStr(lngAccount)
    Else
        strAccount = CStr(lngAccount)
    End If
    '    strAccount = Right("0000000000" & CStr(lngAccount), lngRequiredAccountLength) ' This is an alternative to the previous line
    strAccount = StrConv(strAccount, vbUnicode)
    strArrayAccount = Split(strAccount, vbNullChar)

    If lngBankNumber = 20 And lngBranch > 400 Then    ' a`i' i^n~o^? a"n~?e'o' a'a'?º i^??c,e'-e`o^c,a*u' a^a~a*i` i^400
        strBranch = CStr(lngBranch - 400)    ' i`o^?e' a"c,e'u`a*a'e'i' e'u` i`a"o^c,e'u' 400
    End If

    If lngBankNumber = 12 Or lngBankNumber = 4 Then
        strBranch = lngBranch
    End If

    If Len(strBranch) < 3 Then
        strBranch = String(3 - Len(strBranch), "0") & strBranch    ' i^a*n~e'o' a`o^n~e'i' i`a"u`i`e'i' i`3 n~o^?a*u'
    End If
    strBranch = StrConv(strBranch, vbUnicode)
    strArrayBranch = Split(strBranch, vbNullChar)

    Select Case lngBankNumber
        Case 54
            ' i`a'?º e'?a*u`i`e'i' a`e'i" a`e'i^a*u', e"i` c,u`a'a*i" u'ºe'i"
            fValidateBankAccount = True
        Case 10, 13, 34
            If Right( _
                CLng(strArrayBranch(0)) * 10 + _
                CLng(strArrayBranch(1)) * 9 + _
                CLng(strArrayBranch(2)) * 8 + _
                CLng(strArrayAccount(0)) * 7 + _
                CLng(strArrayAccount(1)) * 6 + _
                CLng(strArrayAccount(2)) * 5 + _
                CLng(strArrayAccount(3)) * 4 + _
                CLng(strArrayAccount(4)) * 3 + _
                CLng(strArrayAccount(5)) * 2 + _
                Right(lngAccount, 2) _
                , 2) = _
                90 Or 72 Or 70 Or 60 Or 20 Then
                fValidateBankAccount = True
            End If
        Case 12, 4
            lngTotal = CLng(strArrayBranch(0)) * 9 + _
                CLng(strArrayBranch(1)) * 8 + _
                CLng(strArrayBranch(2)) * 7 + _
                CLng(strArrayAccount(0)) * 6 + _
                CLng(strArrayAccount(1)) * 5 + _
                CLng(strArrayAccount(2)) * 4 + _
                CLng(strArrayAccount(3)) * 3 + _
                CLng(strArrayAccount(4)) * 2 + _
                CLng(strArrayAccount(5)) * 1
            Select Case lngTotal Mod 11
                Case 0
                    fValidateBankAccount = True
                Case 2
                    Select Case strBranch
                        Case 120, 121, 123, 125, 130, 131, 132, 133, 140, 149, 384, 500, 510, 514, 515, 531, 353, 552, 569, 582, 590, 591, 601, 602, 607, _
                            608, 609, 610, 611, 613, 618, 620, 627, 628, 632, 634, 636, 638, 639, 640, 642, 644, 645, 646, 648, 650, 655, 657, 658, 661, _
                            664, 668, 681, 685, 686, 700, 705, 713, 714, 718, 721, 723, 726, 727, 736, 739, 747, 752, 766, 772, 773, 774, 783, 795, _
                            211, 600, 616, 690, 716, 761, _
                            170, 612, 615, 631
                            fValidateBankAccount = True
                    End Select
                Case 4
                    Select Case strBranch
                        Case 211, 600, 616, 690, 716, 761
                            fValidateBankAccount = True
                    End Select
                Case 6
                    Select Case strBranch
                        Case 170, 612, 615, 631
                            fValidateBankAccount = True
                    End Select
                Case Else
                    fValidateBankAccount = False
            End Select
        Case 11, 17
            lngTotal = CLng(strArrayAccount(0)) * 9 + _
                CLng(strArrayAccount(1)) * 8 + _
                CLng(strArrayAccount(2)) * 7 + _
                CLng(strArrayAccount(3)) * 6 + _
                CLng(strArrayAccount(4)) * 5 + _
                CLng(strArrayAccount(5)) * 4 + _
                CLng(strArrayAccount(6)) * 3 + _
                CLng(strArrayAccount(7)) * 2 + _
                CLng(strArrayAccount(8)) * 1
            Select Case lngTotal Mod 11
                Case 0, 2, 4
                    fValidateBankAccount = True
            End Select
        Case 20
            lngTotal = CLng(strArrayBranch(0)) * 9 + _
                CLng(strArrayBranch(1)) * 8 + _
                CLng(strArrayBranch(2)) * 7 + _
                CLng(strArrayAccount(0)) * 6 + _
                CLng(strArrayAccount(1)) * 5 + _
                CLng(strArrayAccount(2)) * 4 + _
                CLng(strArrayAccount(3)) * 3 + _
                CLng(strArrayAccount(4)) * 2 + _
                CLng(strArrayAccount(5)) * 1
            Select Case lngTotal Mod 11
                Case 0, 2, 4
                    fValidateBankAccount = True
            End Select
        Case 31, 52
            lngTotal = CLng(strArrayAccount(0)) * 9 + _
                CLng(strArrayAccount(1)) * 8 + _
                CLng(strArrayAccount(2)) * 7 + _
                CLng(strArrayAccount(3)) * 6 + _
                CLng(strArrayAccount(4)) * 5 + _
                CLng(strArrayAccount(5)) * 4 + _
                CLng(strArrayAccount(6)) * 3 + _
                CLng(strArrayAccount(7)) * 2 + _
                CLng(strArrayAccount(8)) * 1
            Select Case lngTotal Mod 11
                Case 0
                    fValidateBankAccount = True
                Case Else
                    lngTotal = CLng(strArrayAccount(3)) * 6 + _
                        CLng(strArrayAccount(4)) * 5 + _
                        CLng(strArrayAccount(5)) * 4 + _
                        CLng(strArrayAccount(6)) * 3 + _
                        CLng(strArrayAccount(7)) * 2 + _
                        CLng(strArrayAccount(8)) * 1
                    If lngTotal Mod 11 = 0 Then
                        fValidateBankAccount = True
                    End If
            End Select
        Case 9
            lngTotal = CLng(strArrayAccount(0)) * 9 + _
                CLng(strArrayAccount(1)) * 8 + _
                CLng(strArrayAccount(2)) * 7 + _
                CLng(strArrayAccount(3)) * 6 + _
                CLng(strArrayAccount(4)) * 5 + _
                CLng(strArrayAccount(5)) * 4 + _
                CLng(strArrayAccount(6)) * 3 + _
                CLng(strArrayAccount(7)) * 2 + _
                CLng(strArrayAccount(8)) * 1
            If lngTotal Mod 10 = 0 Then
                fValidateBankAccount = True
            End If
        Case 22
            lngTotal = CLng(strArrayAccount(0)) * 3 + _
                CLng(strArrayAccount(1)) * 2 + _
                CLng(strArrayAccount(2)) * 7 + _
                CLng(strArrayAccount(3)) * 6 + _
                CLng(strArrayAccount(4)) * 5 + _
                CLng(strArrayAccount(5)) * 4 + _
                CLng(strArrayAccount(6)) * 3 + _
                CLng(strArrayAccount(7)) * 2
            If 11 - (lngTotal Mod 11) = CLng(strArrayAccount(8)) Then
                fValidateBankAccount = True
            End If
        Case 46
            lngTotal = CLng(strArrayBranch(0)) * 9 + _
                CLng(strArrayBranch(1)) * 8 + _
                CLng(strArrayBranch(2)) * 7 + _
                CLng(strArrayAccount(0)) * 6 + _
                CLng(strArrayAccount(1)) * 5 + _
                CLng(strArrayAccount(2)) * 4 + _
                CLng(strArrayAccount(3)) * 3 + _
                CLng(strArrayAccount(4)) * 2 + _
                CLng(strArrayAccount(5)) * 1
            Select Case lngTotal Mod 11
                Case 0
                    fValidateBankAccount = True
                Case 2
                    Select Case strBranch
                        Case 154, 166, 178, 181, 183, 191, 192, 503, 505, 507, 515, 516, 527, 539
                            fValidateBankAccount = True
                    End Select
                Case Else
                    lngTotal = CLng(strArrayAccount(0)) * 9 + _
                        CLng(strArrayAccount(1)) * 8 + _
                        CLng(strArrayAccount(2)) * 7 + _
                        CLng(strArrayAccount(3)) * 6 + _
                        CLng(strArrayAccount(4)) * 5 + _
                        CLng(strArrayAccount(5)) * 4 + _
                        CLng(strArrayAccount(6)) * 3 + _
                        CLng(strArrayAccount(7)) * 2 + _
                        CLng(strArrayAccount(8)) * 1
                    If lngTotal Mod 11 = 0 Then
                        fValidateBankAccount = True
                    Else
                        lngTotal = CLng(strArrayAccount(3)) * 6 + _
                            CLng(strArrayAccount(4)) * 5 + _
                            CLng(strArrayAccount(5)) * 4 + _
                            CLng(strArrayAccount(6)) * 3 + _
                            CLng(strArrayAccount(7)) * 2 + _
                            CLng(strArrayAccount(8)) * 1
                        If lngTotal Mod 11 = 0 Then
                            fValidateBankAccount = True
                        End If
                    End If
            End Select
        Case 14
            lngTotal = CLng(strArrayBranch(0)) * 9 + _
                CLng(strArrayBranch(1)) * 8 + _
                CLng(strArrayBranch(2)) * 7 + _
                CLng(strArrayAccount(0)) * 6 + _
                CLng(strArrayAccount(1)) * 5 + _
                CLng(strArrayAccount(2)) * 4 + _
                CLng(strArrayAccount(3)) * 3 + _
                CLng(strArrayAccount(4)) * 2 + _
                CLng(strArrayAccount(5)) * 1
            Select Case lngTotal Mod 11
                Case 0
                    fValidateBankAccount = True
                Case 2
                    Select Case strBranch
                        Case 347, 361, 362, 363, 365, 385
                            fValidateBankAccount = True
                    End Select
                Case 4
                    Select Case strBranch
                        Case 361, 362, 363
                            fValidateBankAccount = True
                    End Select
                Case Else
                    lngTotal = CLng(strArrayAccount(0)) * 9 + _
                        CLng(strArrayAccount(1)) * 8 + _
                        CLng(strArrayAccount(2)) * 7 + _
                        CLng(strArrayAccount(3)) * 6 + _
                        CLng(strArrayAccount(4)) * 5 + _
                        CLng(strArrayAccount(5)) * 4 + _
                        CLng(strArrayAccount(6)) * 3 + _
                        CLng(strArrayAccount(7)) * 2 + _
                        CLng(strArrayAccount(8)) * 1
                    If lngTotal Mod 11 = 0 Then
                        fValidateBankAccount = True
                    Else
                        lngTotal = CLng(strArrayAccount(3)) * 6 + _
                            CLng(strArrayAccount(4)) * 5 + _
                            CLng(strArrayAccount(5)) * 4 + _
                            CLng(strArrayAccount(6)) * 3 + _
                            CLng(strArrayAccount(7)) * 2 + _
                            CLng(strArrayAccount(8)) * 1
                        If lngTotal Mod 11 = 0 Then
                            fValidateBankAccount = True
                        End If
                    End If
            End Select
        Case 23
            fValidateBankAccount = True
    End Select

End Function

'áãé÷ú îñôø úòåãú æäåú
'Public Function fValidateTeudatZehut(lngNum As Long) As Boolean
'    Dim ch As String, i As Integer, iSum As Integer
'    Dim iTemp As Integer
'
'    For i = 1 To 8
'        ch = Mid(lngNum, i, 1)
'        iTemp = Val(ch) * (((i - 1) Mod 2) + 1)
'        If iTemp > 9 Then iTemp = (iTemp Mod 10) + (iTemp \ 10)
'        iSum = iSum + iTemp
'    Next i
'
'    If ((10 - (iSum Mod 10)) Mod 10) = Val(Mid(lngNum, 9, 1)) Then
'        fValidateTeudatZehut = True
'    Else
'        fValidateTeudatZehut = False
'    End If
'End Function

Public Function fValidateTeudatZehut(ID As Variant) As Boolean
' http://halemo.net/info/idcard/index.html
    Dim i As Integer
    Dim sum As Integer
    Dim digit As Integer

    ID = Val(ID)
    While Len(ID) < 9
        ID = "0" & ID
    Wend

    sum = 0

    For i = 1 To 9
        digit = Strings.Mid$(ID, i, 1)
        If (i Mod 2) = 0 Then
            If digit >= 5 Then
                digit = 2 * digit - 9
            Else
                digit = digit * 2
            End If
        End If
        sum = sum + digit
    Next i

    fValidateTeudatZehut = (sum Mod 10) = 0

End Function
 
נערך לאחרונה ב:

רייצ'ל PA

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

אולי מעניין אותך גם...

שיתוף ציורי דיוקן שציירתי לאחרונה
היי לכל המאיירים/ות המוכשרים פה בפורום. טוב, שמי איריס ג’פרי, והאמת שאני די ישנה, אבל גם די חדשה כאן כיוון שזו הפעם הראשונה שמשתפת פה. מצרפת פה...
5.00 star(s) 3 דירוגים
אוהבים לגוון את החג?
בכל הנוגע לארוחות חג, האנושות מתחלקת לשניים. למחצית מהאנשים אין בעיה לחזור על האוכל המוכר והמסורתי במשך כל ארוחות החג, ואילו אנשי המחצית השניה...
<<< פרויקט מיוחד - סיכום תשפ"א בקהילת הכתיבה >>>
'מה כבר עשינו?' - פרויקט סיכום השנה - וואו. איזו שנה שזו הייתה, תשפ"א. היה לנו בחירות, היו חילופי שלטון בישראל, בארה"ב ובאירן, הייתה קורונה...
עלילות מד"א והברסלבים, סיפור אקשן בהמשכים. פרקים ראשונים
פרק 1 - ידיעה חדשותית חולי קורונה מאומתים חזרו מאומן עם אישורים מזוייפים – ונעצרו בנתב"ג מתוך עשרות אלפי החסידים שנסעו לשהות במהלך ימי ראש השנה...

דירות לחגים

המספרים של פרוג:

337,452

משתמשים נכנסו לפרוג בחודש האחרון

2

משתמשים מבקרים ברגע זה באתר

4,986

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

לוח נדל"ן | למכירה והשכרה

לוח דרושים

למעלה
לשיחת ווטסאפ עם בית פרוג
צ'אט בווטסאפ בנושאי יעוץ לימודים, פדגוגיה ומזכירות
היי, אפשר לדבר איתנו, אנחנו כאן!