درست کردت شماره حسابها به فرمت بانک صادرات

Collapse
X
 
  • زمان
  • نمایش
Clear All
new posts
  • امیر رضا

    • 2014/02/14
    • 38

    درست کردت شماره حسابها به فرمت بانک صادرات

    سلام دوستان در فایل ضمیمه قراره که شماره حسابهایی که در کلوم a وجوددارند را بررسی کنیم و بنا به درخواست بانک مثلا صادرات رکوردهایی که طول آنها کمتر از 13 رقم باشد رو شناسایی و در ازای هر تعداد رقمی که از 13 رقم کم دارند رو به همان تعداد به ابتدای آنها کاراکتر یا عدد 0 وارد میکنیم اینو واقعا نمیدونم چطور باید انجام بدم حلقه رو نوشتم لطفا در این مورد خاص کمکم کنید



    مثلا طول شماره حساب علی 12 رقم است مـثال : 123456789101

    که چون یک رقم از 13 رقم کم دارید باید به اینصورت اطلاح گردد یعنی یک عدد صفر قبل از شماره حساب آورده شود

    یعنی : 0123456789101

    خب من اومدم چون نتوستم فایلمو اپ کنم یه همچین کدی نوشتم که اول تعداد طول اعداد رو بدست بیارم سپس اونایی که کمتر از 13 رقم کسری دارند رو تعداد کسریهاشونو بدست بیارم
    و نهایتا در ستون دیگر به تعدا کسری ها از 13 رقم ایتدای آنها صفر اضافه کنم و بعدش خود رکوردهای اصلیمو بنویسم

    ببینید کدها رو :

    کد:
    Dim c As Range
    Dim MyLen
       
        ActiveSheet.Name = "sheet1"
        
            
                    
            For Each c In Sheet1.Range("a2:a5")
            
                    If c.Value <> "" Then
                    
                               MyLen = Len(c) ' get len of records
                               c.Offset(0, 1).Value = MyLen
                               c.Offset(0, 2).Value = 13 - MyLen 'find Zero Deficit
                               
                                    If c.Offset(0, 1).Value = 13 Then
                                       c.Offset(0, 3).Value = c.Value
                                       
                                       Else
                                       c.Offset(0, 3).Value = "000" & c.Value ' ma moshakhas kardim recordha cheghadr az 13 ragham kam darand
                                                                               ' hala chegone begim be tedade kasri "0" bezar ?
                                    End If
                               
                    End If
             
            Next
    خب تعداد کسری ها از 13 رقم هم بدست آوردیم چطور بگم در ستون بعدی بیا به تعداد کسریها "0" صفر به ابتدای آنها اضافه کن ؟
  • Amir Ghasemiyan

    • 2013/09/20
    • 4476

    #2
    سلام دوست عزيز
    شما ميتوني از يك حلقه استفاده كني و شمارندش رو بذاري 13 منهاي تعداد كاركتر اون كد. بعد هر بار كه صفر اضافه ميكني بريز تو همون متغير قبلي

    کامنت

    • امين اسماعيلي
      مدير تالار ويژوال بيسيك

      • 2013/01/17
      • 1198

      #3
      با درود
      دقیقا همونی که اقای قاسمیان گفتن
      من واسه یه رنج مینویسم خودت تعمیمش بده. خواهشن فرمت ستون A رو قبلش رو تکست بزار تا صفر قبل عدد بیاد
      کد:
      Private Sub CommandButton1_Click()
      Dim a
      a = 13 - Len(Range("A1").Value)
      If a > 0 Then
      For i = 1 To a
      Range("A1").Value = "0" & Range("A1").Value
      Next i
      End If
      End Sub
      واسه کلید نوشتم. شما تو ایونت change هم واسه تغییرات تو ستون A هم میتونی بنویسی. فرمت که گفتم رو تکست باشه فراموش نشه قبلش. کل ستون A رو انتخاب بعد format cell بعد تکست .
      در پناه خداوندگار ایران زمین باشید و پیروز

      کامنت

      • misammisam
        مدير تالار حسابداری و اکسل

        • 2014/04/03
        • 892

        #4
        سلام

        اين كاري كه شما ميخوايد انجام بدين اصلا به كد نويسي احتياج نداره ، شما cell هايي كه بايد اين اتفاق درونشون بيفته select كنيد و بعد به وسيله دكمه راست موس format cell رو انتخاب و گزينه custom رو زده و در قسمت type بايد بنويسيد 0000000000000 ( هر تعداد كه لازم داريد صفر بگذاريد ) . اينطوري همه ارقام به يك اندازه كاراكتر دارند و پشت اونهايي كه كاراكتر كم دارن صفر قرار ميگيره .

        براتون يك فايل نمونه آپلود ميكنم .

        کد:
        [ATTACH]2915[/ATTACH]
        sigpic

        کامنت

        • امين اسماعيلي
          مدير تالار ويژوال بيسيك

          • 2013/01/17
          • 1198

          #5
          با درود
          شرمنده . دقیقا حرف دوستمون درسته . حق با ایشونه. فقط چون تو این تالار بحثشو باز کردین و خودتونم کد گذاشتین . ولی دقیقا حق با دوستمونه. ممنون از یاداوری
          در پناه خداوندگار ایران زمین باشید و پیروز

          کامنت

          • امیر رضا

            • 2014/02/14
            • 38

            #6
            از اینکه دوستان خوبی در این سایت پیدا کردم خیلی خوشحالم مخصوصا از سولوشن آقای misammisam که عالی بود

            کامنت

            Working...