نحوه ذخیره و نمایش شماره کارت بانکی

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • master

    • 2010/07/18
    • 118

    پرسش نحوه ذخیره و نمایش شماره کارت بانکی

    سلام
    با توجه به اینکه شماره کارت 16 رقمی هست راهی وجود داره که بعد از ورود عدد اخر 0 نشه؟
    چیزی که من سرچ کردم یه راه این هست که فرمت سلول تبدیل به text بشه و بعد شماره کارت وارد بشه که تقریبا مشکل رو حل میکنه اما من میخوام نحوه نمایش به این صورت بشه
    ####-####-####-####
    وقتی توی حالت عادی عدد رو وارد کنم و بعد برم فرمت بالا رو استفاده کنم نمایش درست میشه اما مشکل رقم اخر که 0 میشه هستش
    توی حالت text هم که عدد رو وارد کنم مشکل رقم اخر وجود نداره ولی دیگه نمیشه از فرمت بالا استفاده کرد و همه رقم ها رو پشت سر هم نمایش میده

    من چون میخوام شماره کارت رو کپی کنم همیشه باید به شکل یه عدد 16 رقمی باشه ولی میخوام نمایش به اون صورت بالا باشه

    راه حلی وجود داره؟

    ضمنا همین مشکل رو با شناسه شبا هم دارم اون دیگه 24 رقم هست که وضع بدتر هست اونم میخوام به صورت یه عدد 4 رقمی ذخیره بشه (برا کپی نیاز دارم) ولی نمایش به صورت زیر باشه:
    IR## #### #### #### #### #### ##

    با تشکر
  • مصطفی رجبی

    • 2015/05/24
    • 73
    • 47.00

    #2
    نوشته اصلی توسط master
    سلام
    با توجه به اینکه شماره کارت 16 رقمی هست راهی وجود داره که بعد از ورود عدد اخر 0 نشه؟
    چیزی که من سرچ کردم یه راه این هست که فرمت سلول تبدیل به text بشه و بعد شماره کارت وارد بشه که تقریبا مشکل رو حل میکنه اما من میخوام نحوه نمایش به این صورت بشه
    ####-####-####-####
    وقتی توی حالت عادی عدد رو وارد کنم و بعد برم فرمت بالا رو استفاده کنم نمایش درست میشه اما مشکل رقم اخر که 0 میشه هستش
    توی حالت text هم که عدد رو وارد کنم مشکل رقم اخر وجود نداره ولی دیگه نمیشه از فرمت بالا استفاده کرد و همه رقم ها رو پشت سر هم نمایش میده

    من چون میخوام شماره کارت رو کپی کنم همیشه باید به شکل یه عدد 16 رقمی باشه ولی میخوام نمایش به اون صورت بالا باشه

    راه حلی وجود داره؟

    ضمنا همین مشکل رو با شناسه شبا هم دارم اون دیگه 24 رقم هست که وضع بدتر هست اونم میخوام به صورت یه عدد 4 رقمی ذخیره بشه (برا کپی نیاز دارم) ولی نمایش به صورت زیر باشه:
    IR## #### #### #### #### #### ##

    با تشکر
    سلام . شما در پنجره FormatCells تب Number هر فرمتی رو می تونید تعریف کنید. برای نمونه فرمت شماره کارت و شماره شبا رو تعریف کردم . در فایل اکسل گذاشتم.
    فایل های پیوست شده

    کامنت

    • sajjadahmady
      • 2013/10/24
      • 1

      #3
      خوب این روش هم که آخر کارت را 0 میزاره

      کامنت

      • iranweld

        • 2015/03/29
        • 3341

        #4
        با سلام

        فایل پیوست را بررسی کنیدکدنویسی برای ستون A انجام شده است

        کد PHP:
        Sub Worksheet_Change(ByVal Target As Range)

            If 
        Not Intersect(TargetMe.Range("A1:A10000")) Is Nothing Then
            
            On Error Resume Next
            
        Application
        .EnableEvents False

        Target
        .NumberFormat "@"

        For 1 To Len(TargetStep 4
         
        If Len(xx) < 4 Then
         xx 
        Mid(Targeti4)
         Else
         
        xx xx "-" Mid(Targeti4)
         
        End If
         
        Next
         
        Target 
        xx
         Application
        .EnableEvents True
         
         End 
        If

        End Sub 
        فایل های پیوست شده

        کامنت

        • mohammadreza12
          • 2019/02/18
          • 1
          • 39.00

          #5
          این فرمول ایراد دارد از رقم 15 به بعد 0 می زند!!!
          در مورد تمامی فرمول های عددی حتی نامبر بالای 15 رقم هم همین مشکل را دارد

          کامنت

          • iranweld

            • 2015/03/29
            • 3341

            #6
            چرا بنده تست میکنم مشکل نداره؟

            Click image for larger version

Name:	2.png
Views:	1
Size:	33.9 کیلو بایت
ID:	135056

            کامنت

            • مهندس تبریزی

              • 2019/07/10
              • 109
              • 93.00

              #7
              با سلام و خسته نباشید
              ببخشید مثل اینکه ماکروتون ایراد داره وقتی برای بار دوم ویرایش میشه به جای یک خط تیره دو خط تیره میزاره و بار سوم سه تا.
              نمونه اش کافی تنها یک رقم عدد قبلی را عوض کنید.مانند 1111-2222-3333-4444 که بشه 1111-2222-3333-4445
              باید چک بشه اگه کاراکتر پنجم و دهم و پانزدهم خط تیره است دوباره خط تیره نزاره
              سپاسگزارم
              Last edited by مهندس تبریزی; 2019/07/14, 06:59.
              [CENTER][SIZE=4][FONT=arial][COLOR=#b22222] :winner2:[/COLOR][COLOR=#000080] فرانسیس بیکن : [/COLOR][COLOR=#0000cd]آنچه مردم را [/COLOR][COLOR=#ff0000]دانشمند [/COLOR][COLOR=#0000cd]می کند ، مطالبی نیست که [/COLOR][COLOR=#800000]می خوانند[/COLOR][COLOR=#0000cd] بلکه چیزهایی است که [/COLOR][COLOR=#800000]یاد می گیرند[/COLOR][COLOR=#b22222] :lamo:[/COLOR][/FONT]
              [/SIZE][/CENTER]

              کامنت

              • iranweld

                • 2015/03/29
                • 3341

                #8
                با سلام

                کد اصلاح شد.

                کد PHP:
                Sub Worksheet_Change(ByVal Target As Range)

                    If 
                Not Intersect(TargetMe.Range("A1:A10000")) Is Nothing Then
                    
                    On Error Resume Next
                    
                Application
                .EnableEvents False

                Target
                .NumberFormat "@"

                For 1 To Len(Target)

                If 
                Mid(Targeti1) <> "-" Then
                kk 
                kk Mid(Targeti1)
                End If

                Next

                Target 
                kk



                For 1 To Len(TargetStep 4

                 
                If Len(xx) < 4 Then
                 
                 xx 
                Mid(Targeti4)
                 
                 Else
                 
                 
                xx xx "-" Mid(Targeti4)
                 
                 
                End If
                 
                Next
                 
                Target 
                xx
                 Application
                .EnableEvents True
                 
                 End 
                If

                End Sub 
                فایل های پیوست شده

                کامنت

                • مهندس تبریزی

                  • 2019/07/10
                  • 109
                  • 93.00

                  #9
                  سلام و وقت بخیر استاد
                  خیلی عالی شد دستتون درد نکنه.

                  با عرض معذرت چطور میشه این شرط را اضافه کرد که بیشتر از 16 رقم وارد نشه ؟؟؟
                  سپاسگزارم
                  Last edited by مهندس تبریزی; 2019/07/14, 16:58.
                  [CENTER][SIZE=4][FONT=arial][COLOR=#b22222] :winner2:[/COLOR][COLOR=#000080] فرانسیس بیکن : [/COLOR][COLOR=#0000cd]آنچه مردم را [/COLOR][COLOR=#ff0000]دانشمند [/COLOR][COLOR=#0000cd]می کند ، مطالبی نیست که [/COLOR][COLOR=#800000]می خوانند[/COLOR][COLOR=#0000cd] بلکه چیزهایی است که [/COLOR][COLOR=#800000]یاد می گیرند[/COLOR][COLOR=#b22222] :lamo:[/COLOR][/FONT]
                  [/SIZE][/CENTER]

                  کامنت

                  • iranweld

                    • 2015/03/29
                    • 3341

                    #10
                    در فایل ذیل در صورت ورود بیشتر از 16 کارکتر کل سلول پاک میگردد


                    کد PHP:
                    If Len(kk) <= 16 Then

                    Target 
                    kk

                    Else

                    Target ""

                    End If 
                    فایل های پیوست شده

                    کامنت

                    • مهندس تبریزی

                      • 2019/07/10
                      • 109
                      • 93.00

                      #11
                      سپاسگزارم استاد
                      [CENTER][SIZE=4][FONT=arial][COLOR=#b22222] :winner2:[/COLOR][COLOR=#000080] فرانسیس بیکن : [/COLOR][COLOR=#0000cd]آنچه مردم را [/COLOR][COLOR=#ff0000]دانشمند [/COLOR][COLOR=#0000cd]می کند ، مطالبی نیست که [/COLOR][COLOR=#800000]می خوانند[/COLOR][COLOR=#0000cd] بلکه چیزهایی است که [/COLOR][COLOR=#800000]یاد می گیرند[/COLOR][COLOR=#b22222] :lamo:[/COLOR][/FONT]
                      [/SIZE][/CENTER]

                      کامنت

                      چند لحظه..