سلام دوستان در فایل ضمیمه قراره که شماره حسابهایی که در کلوم a وجوددارند را بررسی کنیم و بنا به درخواست بانک مثلا صادرات رکوردهایی که طول آنها کمتر از 13 رقم باشد رو شناسایی و در ازای هر تعداد رقمی که از 13 رقم کم دارند رو به همان تعداد به ابتدای آنها کاراکتر یا عدد 0 وارد میکنیم اینو واقعا نمیدونم چطور باید انجام بدم حلقه رو نوشتم لطفا در این مورد خاص کمکم کنید
مثلا طول شماره حساب علی 12 رقم است مـثال : 123456789101
که چون یک رقم از 13 رقم کم دارید باید به اینصورت اطلاح گردد یعنی یک عدد صفر قبل از شماره حساب آورده شود
یعنی : 0123456789101
خب من اومدم چون نتوستم فایلمو اپ کنم یه همچین کدی نوشتم که اول تعداد طول اعداد رو بدست بیارم سپس اونایی که کمتر از 13 رقم کسری دارند رو تعداد کسریهاشونو بدست بیارم
و نهایتا در ستون دیگر به تعدا کسری ها از 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




کامنت