پر کردن اطلاعات سطرهای منتخب لیست باکس

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

    • 2020/04/17
    • 93
    • 54.00

    [حل شده] پر کردن اطلاعات سطرهای منتخب لیست باکس

    با سلام
    یه Listbox دارم که بصورت MultiSelect تنظیم شده است.
    و بر اساس یک کمبوباکس فیلتر شده است .
    کدی می خواهم بنویسم که بعد از انتخاب چند سطر و فشردن دکمه بتوان ستون F متناظر هر سطر را با کلمه Yes پر کرد.
    لطفا راهنمایی ام بفرمایید ( متأسفانه نتونستم فایل رو ضمیمه کنم )
    با تشکر
  • mrhartsclube

    • 2017/11/15
    • 130
    • 81.00

    #2
    سلام دوست عزیز

    در کد زیر بجای ListBox1 اسم لیست باکستون رو بذارید و بجای Sheet4 اسم شیت تون رو بذارید و اگه متغیری به اسم i دارید نام متغیز i رو هم عوض کنید:

    کد PHP:
    Private Sub CommandButton1_Click()
    With UserForm1
        
    For 0 To .ListBox1.ListCount 1
            
    If .ListBox1.Selected(i) = True Then
                Worksheets
    ("Sheet4").Cells(1"F") = "Yes"
            
    End If
        
    Next i
    End With
    End Sub 
    [CENTER][COLOR=#696969][FONT=lucida console]... [B]Programming [/B]C# - VB.Net - VC++ - ASP.Net - HTML - CSS - JS - AS2 - AutoIt - Pascal - Delphi - PHP - Python - VBA - Etc
    [/FONT][/COLOR][SIZE=2][FONT=lucida console][COLOR=#808080]... 2D & 3D [B]Graphic Designer[/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] 2D & 3D [B]Animator [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Game [/B]Designer & [B]Hacker [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] Data [B]Forensic [/B]Expert [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Ethical [/B]Hacker [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Pen[/B] Tester

    [/COLOR][/FONT][/SIZE][COLOR=#ff0000][FONT=courier new][SIZE=4][B].: Expert in doing what nobody else can :.[/B][/SIZE][/FONT][/COLOR][/CENTER]

    کامنت

    • پیمان طهماسبی

      • 2020/04/17
      • 93
      • 54.00

      #3
      نوشته اصلی توسط mrhartsclube
      سلام دوست عزیز

      در کد زیر بجای ListBox1 اسم لیست باکستون رو بذارید و بجای Sheet4 اسم شیت تون رو بذارید و اگه متغیری به اسم i دارید نام متغیز i رو هم عوض کنید:

      کد PHP:
      Private Sub CommandButton1_Click()
      With UserForm1
          
      For 0 To .ListBox1.ListCount 1
              
      If .ListBox1.Selected(i) = True Then
                  Worksheets
      ("Sheet4").Cells(1"F") = "Yes"
              
      End If
          
      Next i
      End With
      End Sub 
      با سلام
      بعد از فیلتر شدن شیت مثلا سطرهای 28 و 34 و 55 بایستی بر اساس انتخاب کدوم سطر یا سطرهای لیست باکس
      ( ردیفهای 0 و 1 و 2 ) انتخاب شده و سلول مورد نظر پر شود
      ولی در دستوری که شما داده اید میرود معادل سطرهای لیست باکس که هیچ ربطی به اطلاعات ما داره رو پر می کنه
      یه جورایی می بایست ردیف ( ردیفهای ) شیت فیلتر شده ( که رویت می شوند ) را با سطرهای منتخب لیست باکس
      معادل کرد تا پیدا شود و سپس پر کرد.

      کامنت

      • mrhartsclube

        • 2017/11/15
        • 130
        • 81.00

        #4
        نوشته اصلی توسط پیمان طهماسبی
        با سلام
        بعد از فیلتر شدن شیت مثلا سطرهای 28 و 34 و 55 بایستی بر اساس انتخاب کدوم سطر یا سطرهای لیست باکس
        ( ردیفهای 0 و 1 و 2 ) انتخاب شده و سلول مورد نظر پر شود
        ولی در دستوری که شما داده اید میرود معادل سطرهای لیست باکس که هیچ ربطی به اطلاعات ما داره رو پر می کنه
        یه جورایی می بایست ردیف ( ردیفهای ) شیت فیلتر شده ( که رویت می شوند ) را با سطرهای منتخب لیست باکس
        معادل کرد تا پیدا شود و سپس پر کرد.
        سلام دوست عزیز

        معمولا به همین خاطر فایل نمونه میذارن، یا دقیق توضیح میدن. من از توضیح دومتون حتی از توضیح اولتون هم کمتر متوجه شدم شما چی میخواین!

        لطفا فایل نمونه ارسال کنید، فایلهای Xlsm رو باید Zip کنید که اجازه اتچ کردن رو بده.


        Sent from my iPhone using Tapatalk
        [CENTER][COLOR=#696969][FONT=lucida console]... [B]Programming [/B]C# - VB.Net - VC++ - ASP.Net - HTML - CSS - JS - AS2 - AutoIt - Pascal - Delphi - PHP - Python - VBA - Etc
        [/FONT][/COLOR][SIZE=2][FONT=lucida console][COLOR=#808080]... 2D & 3D [B]Graphic Designer[/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] 2D & 3D [B]Animator [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Game [/B]Designer & [B]Hacker [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] Data [B]Forensic [/B]Expert [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Ethical [/B]Hacker [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Pen[/B] Tester

        [/COLOR][/FONT][/SIZE][COLOR=#ff0000][FONT=courier new][SIZE=4][B].: Expert in doing what nobody else can :.[/B][/SIZE][/FONT][/COLOR][/CENTER]

        کامنت

        • پیمان طهماسبی

          • 2020/04/17
          • 93
          • 54.00

          #5
          متأسفانه فایل رو هم زیپ کردم باز هم نشد اتچ کنم
          اجازه بدید کمی واضحتر توضیح بدم
          من یه شیت خرید دارم که توی اون مثلا سه قلم جنس ( پیچ - مهره - واشر ) در تاریخ های مختلف و به قیمتهای مختلف خریدم
          و هر خرید یه ردیف را به خودش اختصاص داده ( مثلا پیچ سه ردیف خرید کردم - مهره : پنج ردیف و واشر یک ردیف)
          در یوزرفرم بر اساس نوع جنس که از طریق یک کمبوباکس تعیین می شود ( مثلا پیچ ) شیت بر اساس ستون اقلام فیلتر شده و فقط ردیفهای خرید پیچ را نشان می دهد
          این ردیفها ( مثلا ردیف سوم - پنجم و نهم) هست
          در یوزرفرم نیز بر همین اساس لیست باکس فقط اطلاعات خرید پیچ ها رو در سه سطر نشان میدهد.
          حالا من می خواهم سطر (سطرهایی) را که روی لیست باکس انتخاب می کنم معادلشون در شیت ستون F کلمه Yes پر شود.
          لازم بذکر است لیست باکس خاصیت MultiSelect دارد.
          امیدوارم تونسته باشم مفهوم رو برسونم

          کامنت

          • mrhartsclube

            • 2017/11/15
            • 130
            • 81.00

            #6
            نوشته اصلی توسط پیمان طهماسبی
            متأسفانه فایل رو هم زیپ کردم باز هم نشد اتچ کنم
            اجازه بدید کمی واضحتر توضیح بدم
            من یه شیت خرید دارم که توی اون مثلا سه قلم جنس ( پیچ - مهره - واشر ) در تاریخ های مختلف و به قیمتهای مختلف خریدم
            و هر خرید یه ردیف را به خودش اختصاص داده ( مثلا پیچ سه ردیف خرید کردم - مهره : پنج ردیف و واشر یک ردیف)
            در یوزرفرم بر اساس نوع جنس که از طریق یک کمبوباکس تعیین می شود ( مثلا پیچ ) شیت بر اساس ستون اقلام فیلتر شده و فقط ردیفهای خرید پیچ را نشان می دهد
            این ردیفها ( مثلا ردیف سوم - پنجم و نهم) هست
            در یوزرفرم نیز بر همین اساس لیست باکس فقط اطلاعات خرید پیچ ها رو در سه سطر نشان میدهد.
            حالا من می خواهم سطر (سطرهایی) را که روی لیست باکس انتخاب می کنم معادلشون در شیت ستون F کلمه Yes پر شود.
            لازم بذکر است لیست باکس خاصیت MultiSelect دارد.
            امیدوارم تونسته باشم مفهوم رو برسونم
            الان همچنان حس میکنم کدی که من نوشتم همین کار رو میکنه، فقط من خاصیت فیلتر کردن رو نذاشتم چون خودتون داشتید از قبل، من کار رو به یه لیست باکس Multiselect و یه دکمه خلاصه کردم.
            هنوز فکر کنم متوجه نشدم مشکل از کجاست!


            Sent from my iPhone using Tapatalk
            [CENTER][COLOR=#696969][FONT=lucida console]... [B]Programming [/B]C# - VB.Net - VC++ - ASP.Net - HTML - CSS - JS - AS2 - AutoIt - Pascal - Delphi - PHP - Python - VBA - Etc
            [/FONT][/COLOR][SIZE=2][FONT=lucida console][COLOR=#808080]... 2D & 3D [B]Graphic Designer[/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] 2D & 3D [B]Animator [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Game [/B]Designer & [B]Hacker [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] Data [B]Forensic [/B]Expert [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Ethical [/B]Hacker [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Pen[/B] Tester

            [/COLOR][/FONT][/SIZE][COLOR=#ff0000][FONT=courier new][SIZE=4][B].: Expert in doing what nobody else can :.[/B][/SIZE][/FONT][/COLOR][/CENTER]

            کامنت

            • پیمان طهماسبی

              • 2020/04/17
              • 93
              • 54.00

              #7
              نوشته اصلی توسط mrhartsclube
              الان همچنان حس میکنم کدی که من نوشتم همین کار رو میکنه، فقط من خاصیت فیلتر کردن رو نذاشتم چون خودتون داشتید از قبل، من کار رو به یه لیست باکس Multiselect و یه دکمه خلاصه کردم.
              هنوز فکر کنم متوجه نشدم مشکل از کجاست!


              Sent from my iPhone using Tapatalk
              کد شما میره اطلاعات رو در سطر منتخب لیست باکس اضافه میکنه نه سطر شیت
              ( مثلا باید در سطر پنجم شیت ثبت بشه ولی در سطر اول ثبت میشه )

              کامنت

              • mrhartsclube

                • 2017/11/15
                • 130
                • 81.00

                #8
                اون که اطلاعات الکی گذاشتم فقط در حد اینه که یه چیزی داخل لیست باکس بیاد
                در واقع اونو شما میتونید تغییر بدین
                اصل کد پیدا کردن سلکشن شما و Yes گذاشتن در ستون F بود
                دیگه اون تغییراتو خودتون میتونید بدین


                Sent from my iPhone using Tapatalk
                [CENTER][COLOR=#696969][FONT=lucida console]... [B]Programming [/B]C# - VB.Net - VC++ - ASP.Net - HTML - CSS - JS - AS2 - AutoIt - Pascal - Delphi - PHP - Python - VBA - Etc
                [/FONT][/COLOR][SIZE=2][FONT=lucida console][COLOR=#808080]... 2D & 3D [B]Graphic Designer[/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] 2D & 3D [B]Animator [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Game [/B]Designer & [B]Hacker [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] Data [B]Forensic [/B]Expert [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Ethical [/B]Hacker [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Pen[/B] Tester

                [/COLOR][/FONT][/SIZE][COLOR=#ff0000][FONT=courier new][SIZE=4][B].: Expert in doing what nobody else can :.[/B][/SIZE][/FONT][/COLOR][/CENTER]

                کامنت

                • پیمان طهماسبی

                  • 2020/04/17
                  • 93
                  • 54.00

                  #9
                  متغیر i شمارنده سطر در لیست باکس است و نه شمارنده سطر در شیت
                  مثلا در صورتیکه i=1 باشد سطر دوم از لیست باکس و سلول F2 پر میشود ولی بایستی سلول F5 پر گردد


                  اصلا شما کدی بگو که سطر معادل اطلاعات در شیت رو Select بکنه

                  - - - Updated - - -

                  از اساتید و مدیر ان کسی نمیاد در حل این کد به ما راهنمایی بده؟

                  کامنت

                  • mrhartsclube

                    • 2017/11/15
                    • 130
                    • 81.00

                    #10
                    نوشته اصلی توسط پیمان طهماسبی
                    اصلا شما کدی بگو که سطر معادل اطلاعات در شیت رو Select بکنه
                    این کد این کارو میکنه به شرطی که تناسب سلولها و سطرهای لیست باکس یک به یک باشه، یعنی آیتم i لیست باکس خونه Ai باشه یا A(i+x) در غیر این صورت باید عضو تکراری نداشته باشه که یه کلیدی برای ربط دادن اینا به هم باشه:

                    کد PHP:
                    Private Sub CommandButton1_Click()

                    With UserForm1

                        lastRowIndex 
                    Worksheets("Sheet4").Cells(Worksheets("Sheet4").Rows.Count"A").End(xlUp).Row

                        
                    For 0 To lastRowIndex 1

                            
                    If Worksheets("Sheet4").Cells(1"B") = "Yes" Then

                                
                    .ListBox1.Selected(i) = True

                            End 
                    If

                        
                    Next i

                    End With

                    End Sub 
                    شما اگه فایل بذارین توضیحش راحت تر میشه! چون من هنوز نمیفهمم چرا باید این کد کار نکنه
                    [CENTER][COLOR=#696969][FONT=lucida console]... [B]Programming [/B]C# - VB.Net - VC++ - ASP.Net - HTML - CSS - JS - AS2 - AutoIt - Pascal - Delphi - PHP - Python - VBA - Etc
                    [/FONT][/COLOR][SIZE=2][FONT=lucida console][COLOR=#808080]... 2D & 3D [B]Graphic Designer[/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] 2D & 3D [B]Animator [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Game [/B]Designer & [B]Hacker [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] Data [B]Forensic [/B]Expert [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Ethical [/B]Hacker [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Pen[/B] Tester

                    [/COLOR][/FONT][/SIZE][COLOR=#ff0000][FONT=courier new][SIZE=4][B].: Expert in doing what nobody else can :.[/B][/SIZE][/FONT][/COLOR][/CENTER]

                    کامنت

                    • پیمان طهماسبی

                      • 2020/04/17
                      • 93
                      • 54.00

                      #11
                      میشه ایمیل بدید تا فایل رو براتون بفرستم؟

                      کامنت

                      • mrhartsclube

                        • 2017/11/15
                        • 130
                        • 81.00

                        #12
                        بله همچنبن مبتونید توی آپلودسنترها هم آپلود کنید مثل uupload.ir
                        اینم ایمیل بنده: mrhartsclube@gmail.com
                        [CENTER][COLOR=#696969][FONT=lucida console]... [B]Programming [/B]C# - VB.Net - VC++ - ASP.Net - HTML - CSS - JS - AS2 - AutoIt - Pascal - Delphi - PHP - Python - VBA - Etc
                        [/FONT][/COLOR][SIZE=2][FONT=lucida console][COLOR=#808080]... 2D & 3D [B]Graphic Designer[/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] 2D & 3D [B]Animator [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Game [/B]Designer & [B]Hacker [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] Data [B]Forensic [/B]Expert [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Ethical [/B]Hacker [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Pen[/B] Tester

                        [/COLOR][/FONT][/SIZE][COLOR=#ff0000][FONT=courier new][SIZE=4][B].: Expert in doing what nobody else can :.[/B][/SIZE][/FONT][/COLOR][/CENTER]

                        کامنت

                        • پیمان طهماسبی

                          • 2020/04/17
                          • 93
                          • 54.00

                          #13
                          براتون ایمیل کردم
                          بازم ممنون

                          کامنت

                          • mrhartsclube

                            • 2017/11/15
                            • 130
                            • 81.00

                            #14
                            سلام جناب طهماسبی عزیز

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

                            برای همین اونجا که ستون به لیست باکستون اضافه میکنید تعداد ستونها رو بکنید 7 تا و توی سطری که عرض ستونها رو مشخص میکنید یه صفر اضافه کنید. با این کار یه ستون داریم که هیچکس نمیبیندش
                            توی اون ستون بیایید شماره سطر جنس رو بنویسید که درواقع داخل همون With شما از متغیری که تعریف کردین یعنی CelRow میتونید استفاده کنید.

                            باقیشم همون کدیه که اول خدمتتون تقدیم کردم فقط بجای Index لیست باکس از مقدار آیتم آخر یعنی شمار سطر محصول استفاده کنید
                            [CENTER][COLOR=#696969][FONT=lucida console]... [B]Programming [/B]C# - VB.Net - VC++ - ASP.Net - HTML - CSS - JS - AS2 - AutoIt - Pascal - Delphi - PHP - Python - VBA - Etc
                            [/FONT][/COLOR][SIZE=2][FONT=lucida console][COLOR=#808080]... 2D & 3D [B]Graphic Designer[/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] 2D & 3D [B]Animator [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Game [/B]Designer & [B]Hacker [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] Data [B]Forensic [/B]Expert [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Ethical [/B]Hacker [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Pen[/B] Tester

                            [/COLOR][/FONT][/SIZE][COLOR=#ff0000][FONT=courier new][SIZE=4][B].: Expert in doing what nobody else can :.[/B][/SIZE][/FONT][/COLOR][/CENTER]

                            کامنت

                            • پیمان طهماسبی

                              • 2020/04/17
                              • 93
                              • 54.00

                              #15
                              نوشته اصلی توسط mrhartsclube
                              سلام جناب طهماسبی عزیز

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

                              برای همین اونجا که ستون به لیست باکستون اضافه میکنید تعداد ستونها رو بکنید 7 تا و توی سطری که عرض ستونها رو مشخص میکنید یه صفر اضافه کنید. با این کار یه ستون داریم که هیچکس نمیبیندش
                              توی اون ستون بیایید شماره سطر جنس رو بنویسید که درواقع داخل همون With شما از متغیری که تعریف کردین یعنی CelRow میتونید استفاده کنید.

                              باقیشم همون کدیه که اول خدمتتون تقدیم کردم فقط بجای Index لیست باکس از مقدار آیتم آخر یعنی شمار سطر محصول استفاده کنید
                              با سلام
                              متأسفانه متوجه منظورتون نشدم
                              میشه خواهش کنم این کد رو روی فایلی که خدمتتون ارسال کردم پیاده کنید و فایل رو ارسال بفرمایید
                              با سپاس فراوان

                              کامنت

                              چند لحظه..