نمایش آخرین ایتم لیست باکس

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

    • 2014/02/14
    • 38

    نمایش آخرین ایتم لیست باکس

    سلام بچه ها لطفا یکی بگه چطور میتونم آخرین رکورد لیست باکسمو بدست بیارم

    و 2 اینکه مقادیر تکراری در لیت باکسمو حذف کنم


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

    • 2013/01/17
    • 1198
    • 84.00

    #2
    با درود
    من یه کد برات مینویسم برا ستون A تا هر جا پر باشه. شما خودت ارتقاعش میدی یعنی سعی میکنی با Offset یا هر جور دیگه ای که صلاح دونستی ایتم های ستون دیگه رو هم بیاری. اینو تو باتن یا هر جای دیگه ای مثلا لود شدن یوزر فرم .......(اینو برای یه یست باکس تو یوزر فرمی به نام یک نوشته شده

    کد:
    Dim myCollection As New Collection
    Dim oneCell As Range
    Dim oneString As Variant
     
    For Each oneCell In Range(Range("A1"), Range("A65536").End(xlUp))
        On Error Resume Next
        For Each oneString In Split(CStr(oneCell.Value), ",")
            myCollection.Add Item:=oneString, Key:=oneString
        Next oneString
        On Error GoTo 0
    Next oneCell
     
    With UserForm1.ListBox1
        For Each oneString In myCollection
            .AddItem oneString
        Next oneString
    End With
    بعدشم دوست من شما از همون اول هر چند من اطلاعی اط فایل شما ندارم نباید میزاشتی تکراری وارد بشه. یا از ابزار remove duplicate میتونی تکراری ها رو پاک کنی و مثل قبل بیاریشون تو لیست باکست.
    هر چن کد بالا کارتو باید راه بندازه
    در پناه خداوندگار ایران زمین باشید و پیروز

    کامنت

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

      • 2013/01/17
      • 1198
      • 84.00

      #3
      با درود مجدد
      واسه اخرین ایتم در یه لیست باکس
      شما از کد مثلا میخوای تو ستون اولش اخرینشو بگه چی هست با msgbox میشه

      کد:
      MsgBox Me.ListBox1.List(ListBox1.ListCount - 1, 0)
      Listbox1.listcount هم که تعداد سطر ها رو میده
      در پناه خداوندگار ایران زمین باشید و پیروز

      کامنت

      • امیر رضا

        • 2014/02/14
        • 38

        #4
        نوشته اصلی توسط امين اسماعيلي
        با درود مجدد
        واسه اخرین ایتم در یه لیست باکس
        شما از کد مثلا میخوای تو ستون اولش اخرینشو بگه چی هست با msgbox میشه

        کد:
        msgbox me.listbox1.list(listbox1.listcount - 1, 0)
        listbox1.listcount هم که تعداد سطر ها رو میده
        عالی بودن جناب اسماعیلی دوست داشتنی ، راستش قبول دارم باید فایلمو میزاشتم در هر صورت فقط همین سولوشن شما کارمو راه میندازه کلیت فایل اینه که از تعداد زیادی فایل دیگه دیتاهاشونو صدا بزنیم بدون اینکه بازشون کنیم بخاطر همینه که تاریخ ها تکراری وارد میشه انشاءالله تکمیل شد میزارم تازه کارهایی مثل خودم حتما بدردشون میخوره مجددا از توجه شما خیلی ممنونم جناب اسماعیلی

        کامنت

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

          • 2013/01/17
          • 1198
          • 84.00

          #5
          با درود
          خواهش میکم. خوب اون فایل هایی رو که صدا میزنی . فرضا دارن تکراری میان درستع
          مثلا میتونی تو لود فرم یا اکتیو شدن شیت ابتدا همه تکراری ها پاک بشه. که کافی یه بار ماکرو رو ظبط کنی و با ابزار remove duplicate پاک کنی و بعدش یه تغییر کوچولو توش بدی که اون رنج رو پویا کنه . که خیلی سادست یه متغییر تعریف میکنی و اونو برابر اخرین ردیف قرار میدی که نمونش زیاد تو همون کد های بالا هم یه نمونش هست. بعدش مثلا
          کد:
          range ("A1:D"&lastrow)
          یه همچین جیزی که lastrow نام همون متغییرست مثلا اینجا . بعدش هم دستورات که داری دیگه اجرا میشه
          در پناه خداوندگار ایران زمین باشید و پیروز

          کامنت

          • امیر رضا

            • 2014/02/14
            • 38

            #6
            نوشته اصلی توسط امين اسماعيلي
            با درود
            خواهش میکم. خوب اون فایل هایی رو که صدا میزنی . فرضا دارن تکراری میان درستع
            مثلا میتونی تو لود فرم یا اکتیو شدن شیت ابتدا همه تکراری ها پاک بشه. که کافی یه بار ماکرو رو ظبط کنی و با ابزار remove duplicate پاک کنی و بعدش یه تغییر کوچولو توش بدی که اون رنج رو پویا کنه . که خیلی سادست یه متغییر تعریف میکنی و اونو برابر اخرین ردیف قرار میدی که نمونش زیاد تو همون کد های بالا هم یه نمونش هست. بعدش مثلا
            کد:
            range ("A1:D"&lastrow)
            یه همچین جیزی که lastrow نام همون متغییرست مثلا اینجا . بعدش هم دستورات که داری دیگه اجرا میشه


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

            کامنت

            چند لحظه..