فهمیدن کد پشت ماکرو

Collapse
این تاپیک قفل است.
X
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • dany_3p4u

    • 2014/06/01
    • 8
    • 57.00

    [حل شده] فهمیدن کد پشت ماکرو

    سلام
    ی فایل اکسل هست که هر روز تاریخ و عدد قراره بهش اضافه شه و در نمودار رسم شه
    بعد از مدتی چون تعداد داده ها زیاد میشه به انتهای صفحه میره که اسکرول کردنش سخت میشه
    این رو جایی دیدم اما نمی تونم کد پشتش رو ببینم چطور نوشته شده
    با ماکرو نویسی آشنا هستم و می دونم با کپی اعداد و بردن اون به انتهای ستون داده ها و استفاده از ماکرو شدنی هست
    اما این خیلی حرفه ای تر هست، مثلا اگر در یکی از ستون ها یک عدد جا بیفته ماکرویی که من نوشتم درست عمل نمی کنه
    اما این ماکرو درست عمل میکنه
    ممکنه بگید چه کدی پشتش هست؟ (فقط اون بخش اول که رو Tarikh Adad داره میخوام)
    تشکر
    فایل های پیوست شده
  • M_ExceL

    • 2018/04/23
    • 677

    #2
    نوشته اصلی توسط dany_3p4u
    سلام
    ی فایل اکسل هست که هر روز تاریخ و عدد قراره بهش اضافه شه و در نمودار رسم شه
    بعد از مدتی چون تعداد داده ها زیاد میشه به انتهای صفحه میره که اسکرول کردنش سخت میشه
    این رو جایی دیدم اما نمی تونم کد پشتش رو ببینم چطور نوشته شده
    با ماکرو نویسی آشنا هستم و می دونم با کپی اعداد و بردن اون به انتهای ستون داده ها و استفاده از ماکرو شدنی هست
    اما این خیلی حرفه ای تر هست، مثلا اگر در یکی از ستون ها یک عدد جا بیفته ماکرویی که من نوشتم درست عمل نمی کنه
    اما این ماکرو درست عمل میکنه
    ممکنه بگید چه کدی پشتش هست؟ (فقط اون بخش اول که رو Tarikh Adad داره میخوام)
    تشکر
    سلام
    دو روش برای ثبت اطلاعات قرار داده شده، که خیلی هم سادست، البته درک اون مستلزم آشنایی با دستورات vba هست.
    کد مربوط به ثبت اطلاعات به روش اول :
    کد:
    Private Sub CommandButton1_Click()
    Dim lastrow As Long
    lastrow = Range("b" & Rows.Count).End(xlUp).Row + 1
    
    'MsgBox lastrow
    Application.ActiveSheet.Range("b" & lastrow).Value = Application.ActiveSheet.Range("h2").Value
    Application.ActiveSheet.Range("c" & lastrow).Value = Application.ActiveSheet.Range("i2").Value
    
    End Sub
    کد مربوط به ثبت اطلاعات به روش دوم :
    کد:
    Private Sub CommandButton2_Click()
      Dim Answer As Variant
        Dim Answer2 As Variant
    
        Dim lastrow As Long
    lastrow = Range("b" & Rows.Count).End(xlUp).Row + 1
    
        Answer = InputBox("ُثبت تاريخ - Sabt Tarikh")
        Answer2 = InputBox("ُثبت عدد - Sabt Adad")
    
    
    'MsgBox lastrow
    Application.ActiveSheet.Range("b" & lastrow).Value = Answer
    Application.ActiveSheet.Range("c" & lastrow).Value = Answer2
            
    End Sub
    موفق باشید.
    [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
    [/CENTER]

    کامنت

    • dany_3p4u

      • 2014/06/01
      • 8
      • 57.00

      #3
      نوشته اصلی توسط M_ExceL
      سلام
      دو روش برای ثبت اطلاعات قرار داده شده، که خیلی هم سادست، البته درک اون مستلزم آشنایی با دستورات vba هست.
      کد مربوط به ثبت اطلاعات به روش اول :
      کد:
      Private Sub CommandButton1_Click()
      Dim lastrow As Long
      lastrow = Range("b" & Rows.Count).End(xlUp).Row + 1
      
      'MsgBox lastrow
      Application.ActiveSheet.Range("b" & lastrow).Value = Application.ActiveSheet.Range("h2").Value
      Application.ActiveSheet.Range("c" & lastrow).Value = Application.ActiveSheet.Range("i2").Value
      
      End Sub
      کد مربوط به ثبت اطلاعات به روش دوم :
      کد:
      Private Sub CommandButton2_Click()
        Dim Answer As Variant
          Dim Answer2 As Variant
      
          Dim lastrow As Long
      lastrow = Range("b" & Rows.Count).End(xlUp).Row + 1
      
          Answer = InputBox("ُثبت تاريخ - Sabt Tarikh")
          Answer2 = InputBox("ُثبت عدد - Sabt Adad")
      
      
      'MsgBox lastrow
      Application.ActiveSheet.Range("b" & lastrow).Value = Answer
      Application.ActiveSheet.Range("c" & lastrow).Value = Answer2
              
      End Sub
      موفق باشید.
      آقا بسیار تشکر! عالی بود ...

      کامنت

      • Amir Ghasemiyan

        • 2013/09/20
        • 4598
        • 100.00

        #4
        نوشته اصلی توسط dany_3p4u
        آقا بسیار تشکر! عالی بود ...
        دوست عزيز اگر پاسخ سوالتون رو دريافت كردين لطفا تاپيك رو حل شده كنيد

        کامنت

        چند لحظه..