دستور برای اصلاح شماره ردیف ها بعد از حذف یک ردیف

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

    • 2015/07/19
    • 119
    • 38.00

    پرسش دستور برای اصلاح شماره ردیف ها بعد از حذف یک ردیف

    با سلام من به مشکلی خورده ام از دوستان تقاضا دارم راهنمایی کنن.
    من یه فرم ورود اطلاعات طراحی کردم که دکمه حذف را نیز در فرمم قرار دادهام و مشکلی که دارم این است که بعد از حذف یک ردیف شماره ردیف های بعد از آن اصلاح نمی شوند یعنی یه شماره کم نم شوند خواهشا در نوشتن دستور مربوطه راهنماییم کنید البته لازم به ذکر است که با استفاده از دستور for تونستم مشکلم را حل کنم ولی وقتی تعداد ردیفم زیاد می شود انجام دستور حذف و شماره گذاری زمان بر می شود
  • ordouei

    • 2013/05/01
    • 68
    • 45.00

    #2
    با سلام
    کد زیر را استفاده نمایید - به امید مفید بودن
    Sub Macro1()
    '
    ' Macro1 Macro
    'Excel.saeed@gmail.com


    'in macro ra bad az delete call namaeid
    'Tavajo radif 2 hatman khali bashad
    'chon momken ast radif aval ham delete shavad



    Application.ScreenUpdating = False

    'Taghir "sheet1" ba name sheet khodetan
    Application.Worksheets("sheet1").Select

    Range("A3").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C+1"
    Range("A3").Select

    'Taghir tedad radif ha az soton A10000 be tedad mored nazar
    Selection.AutoFill Destination:=Range("A3:A10000"), Type:=xlFillDefault

    Range("A3:A10000").Select
    Application.ScreenUpdating = True
    Range("A2").Select




    End Sub

    کامنت

    • majid_mx4

      • 2012/06/25
      • 699

      #3
      با سلام
      با فرض اینکه خانه a2 اولین عددشماره ردیف شما باشد .

      از فرمول زیردر همان خانه استفاد نمایید.
      کد:
      =row()-1
      و آن را به خانه های دیگر درگ کنید
      موفق باشید میر
      Last edited by majid_mx4; 2017/01/19, 20:01.

      کامنت

      • alireza_a4

        • 2016/10/14
        • 35

        #4
        از دستور Subtotal هم می تونید استفاده کنید

        کامنت

        • sma4727134

          • 2015/07/19
          • 119
          • 38.00

          #5
          ممنون از راهنماییتون
          در صورت امکان برای فایل زیر دستوری بنویسید که بعد از حذف یک ردیف شماره ردیف های بعدی بصورت اتوماتیک اصلاح شوند با توجه به اینکه اگر تعداد داده زیاد باشد این عمل وقت گیر نباشد در ضمن این عمل با کد نویسی در محیط vba انجام شود
          فایل های پیوست شده

          کامنت

          • ali.b

            • 2014/01/12
            • 798

            #6
            سلام
            تو فایل نمونه انجام شده
            اینم کد اسنفاده شده
            کد:
            Sub radif()Application.ScreenUpdating = False
            Range("B6").Select
            If Range("B6") = Empty Then
            Exit Sub
            End If
            lRow = Cells(Rows.Count, 2).End(xlUp).Row
            Set myRange = Range(Cells(6, 2), Cells(lRow, 2))
            For Each cell In myRange
            cell.Offset(0, -1).Value = i + 1
            i = i + 1
            Next cell
            Application.ScreenUpdating = True
            End Sub
            نمیدونم شاید هنوز کدهاتون کامل نشده ولی پیشنهاد میکنم نحوه مرتب سازی داده هاتون رو اصلاج کنید
            اخز شیت ها ی جدول اومده که بهتره در ی شیت جدا باشه
            بخش عوارض و مالیات با اینکه در فرم براش تعریف کردین ولی باز در سلول ها براش فرمول تعریف شده که موقع حذف ردیف ممکنه مشکل درست کنه
            بهتره برای عوارض و مالیات ک مقادیر ثابتی دارند از نمونه کد زیر استفاده کنید که مثلا وقتی مبلغ نوشته شد به صورت خوکار مالیت و عوارض در بخش های مربوطه نوشته باشه
            تو بحث مالی و حسابداری هرچه داده ها خودکار و هوشمندتر باشن راندمان بالا و خطا پایین میاد
            کد:
            Private Sub TextBox3_Change()TextBox8.Value = TextBox3.Value * 0.03
            
            
            End Sub
            یعنی زمانی که مبلغ رو مینویسی خودکار 3 درصد مالیات رو در textbox8 حساب میکنه
            فایل های پیوست شده
            [CENTER]
            [/CENTER]

            کامنت

            • sma4727134

              • 2015/07/19
              • 119
              • 38.00

              #7
              ممنون از علی آقا بابت راهنماییتان چشم از این به بعد سعی می کنم ب توصیه تون گوش بدم

              کامنت

              چند لحظه..