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

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

    • 2013/11/18
    • 46

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

    سلام
    من یه جدول دارم که یکی از ستون های اون کد ملی هست. حدود ده هزار رکورد توی این جدول ثبت شده . میخوام با فیلتر کردن گروههای مختلف داده رو کنار هم ببینم. مثلا فیلتر کردن کد ملی. (می دونم با سورت کردن هم می تونم ، اما چون جدولم به جاهای دیگه وصله نمی خوام این کارو کنم) . حالا مشکلی که با فیلتر دارم اینه که پیدا کردن یه کد ملی از بین اون همه توی فیلتر سخته . میخوام یه سلول داشته باشم بالای جدول که اگه کد ملی رو وارد کردم بر اون اساس اطلاعات فیلتر بشن. ممنون میشم راهنماییم کنید.(بدون استفاده از وی بی)
  • rahi_feri

    • 2014/08/08
    • 524
    • 94.67

    #2
    سلام
    حالا مشکلی که با فیلتر دارم اینه که پیدا کردن یه کد ملی از بین اون همه توی فیلتر سخته .
    شما چقدر با فیلتر آشنایی دارید!؟! پیدا کردن کد ملی اصلا کار سختی نیست با فیلتر یا از search فیلتر استفاده کنید یا equal to ....
    البته می تونید در سلول تایپ کنید و فیلتر کنید (Advanced Filter) ولی رفرش نمیشه! باید اونوقت از VBA استفاده بشه!
    همینطور می تونید از فرمول برای بازگردانی اطلاعات اون کد ملی هم استفاده کنید! (مثالش ضمیمه شد)
    فایل های پیوست شده
    [B][SIZE=1]بخش امضاء :
    [/SIZE][/B][LEFT]
    [CODE]
    Sub Macro()
    ActiveCell = "IY" & Right(Application.Name, 5)
    With ActiveCell.Characters(Start:=2, Length:=1).Font
    .Name = "Webdings"
    .Color = 255
    End With
    End Sub
    [/CODE]
    [/LEFT]

    کامنت

    • _yalda

      • 2013/11/18
      • 46

      #3
      شما اصلا منظور سوال من رو نگرفتید. کاش دقیق تر می خوندید

      کامنت

      • rahi_feri

        • 2014/08/08
        • 524
        • 94.67

        #4
        سلام
        شما رو نمیدونم ولی فیلتر معنیش اینه که محدود بشه! به یه سری داده!
        نمونه بگذارید و خروجی مورد انتظارتون رو نشون بدید!
        سپاس
        [B][SIZE=1]بخش امضاء :
        [/SIZE][/B][LEFT]
        [CODE]
        Sub Macro()
        ActiveCell = "IY" & Right(Application.Name, 5)
        With ActiveCell.Characters(Start:=2, Length:=1).Font
        .Name = "Webdings"
        .Color = 255
        End With
        End Sub
        [/CODE]
        [/LEFT]

        کامنت

        • Javid Mokhtari
          مدير تالار ويژوال بيسيك

          • 2012/01/16
          • 1212
          • 73.00

          #5
          نوشته اصلی توسط _yalda
          شما اصلا منظور سوال من رو نگرفتید. کاش دقیق تر می خوندید
          باسلام...

          پاسخی که کاربر عزیز جناب rahi_feri دادن دقیقا پاسخ سئوال شما بود.حال اگر از نظر شما این پاسخ جواب سئوال شما نیست، بدون هیچگونه لحن طلب کارانه ای بفرمائید که دقیقا منظور شما چیست...؟
          [FONT=Tahoma][INDENT][CENTER][SIZE=3][FONT=courier new][B][FONT=comic sans ms][SIZE=3][FONT=arial]دوره های آموزش رایگان اکسل از صفر تا پیشرفته بصورت تصویری
          بیش از [COLOR=#008000]60[/COLOR] جلسه آموزش ویدئویی رایگان

          شرکت در دوره:
          [/FONT][/SIZE]
          [SIZE=5] [FONT=Tahoma][FONT=courier new][B][URL]https://javidsoft.ir/courses/[/URL][/B][/FONT][/FONT][/SIZE][/FONT]
          [/B][/FONT][/SIZE]
          [/CENTER]
          [/INDENT]
          [/FONT]

          کامنت

          • _yalda

            • 2013/11/18
            • 46

            #6
            خیلی جالبه که شما از روی متن ، لحن رو تشخیص میدید و قضاوت می کنید. لحن من اصلا طلبکارانه نبود. دیروز لحظه آخر که محل کار داشت تعطیل میشد ، اون پیام رو نوشتم که سایر دوستان بدونن سوالم حل نشده و جواب بدن. و جالب اینکه اگه بخواین قضاوت کنین لحن دوستمون تو سوال اول هم جای بحث داره با اون همه علامت تعجب و علامت سوالی که گذاشتن که این مفهوم رو می رسونه که "چیزی در حد فیلتر هم بلد نیستی!" یعنی سوال این همه ساده هست. که حتی اگه این طور باشه هم بهتره جواب داده بشه ، نه تمسخر.

            جواب سوال من چیزی پیشرفته تر از فیلتر هست. فیلتر ساده و وی لوکاپ و این مدل حل کردن رو هرکسی اکسل ساده هم بلد باشه می تونه انجام بده. من ادعایی در اکسل ندارم. اما خداروشکر کار اکسل 140 نفر رو پنج ساله دارم انجام میدم و مطمئنا این چیزی نبود که پرسیده باشم.

            من واقعا از طرز برخورد مدیر ناراحت شدم . جواب سوالم رو جای دیگه ای پیگیری می کنم.

            کامنت

            • Javid Mokhtari
              مدير تالار ويژوال بيسيك

              • 2012/01/16
              • 1212
              • 73.00

              #7
              اینجا هدف آموزش و کمک به همه ی دوستان و عزیزانی هستش که در زمینه اکسل به مشکلی برخورده اند یا میخواهند حرفه ای تر یاد بگیرند.خدای نکرده هم کسی قصد توهین و تحقیر و تمسخر کسی را ندارد.یعنی حق این کار را ندارد حتی اگر سئوال خیلی ابتدائی باشد.
              حال اگر از برخورد من که هیچ منظوری نداشتم ،ناراحت شدین عذرخواهی میکنم.فقط سوال شما برای ما کمی گنگ هستش.لطفا بیشتر توضیح بدین
              [FONT=Tahoma][INDENT][CENTER][SIZE=3][FONT=courier new][B][FONT=comic sans ms][SIZE=3][FONT=arial]دوره های آموزش رایگان اکسل از صفر تا پیشرفته بصورت تصویری
              بیش از [COLOR=#008000]60[/COLOR] جلسه آموزش ویدئویی رایگان

              شرکت در دوره:
              [/FONT][/SIZE]
              [SIZE=5] [FONT=Tahoma][FONT=courier new][B][URL]https://javidsoft.ir/courses/[/URL][/B][/FONT][/FONT][/SIZE][/FONT]
              [/B][/FONT][/SIZE]
              [/CENTER]
              [/INDENT]
              [/FONT]

              کامنت

              • iranweld

                • 2015/03/29
                • 3341

                #8
                با سلام

                و کسب اجازه از دوستان

                با دو خط ساده VB مشکل شما حل میگردد

                کد PHP:
                Sub Macro1()

                Static 
                t

                If 0 Then

                    ActiveSheet
                .Range("$B$4:$C$10000").AutoFilter Field:=1Criteria1:=Range("b2"), _
                        Operator
                :=xlAnd
                        
                        t 
                1
                        
                        
                Else
                        
                        
                ActiveSheet.Range("$B$4:$C$10000").AutoFilter Field:=1
                        t 
                0
                        
                        End 
                If
                End Sub 
                فایل های پیوست شده
                Last edited by iranweld; 2016/12/13, 14:01.

                کامنت

                • _yalda

                  • 2013/11/18
                  • 46

                  #9
                  سلام . با تشکر از همگی. ممنون بابت راهنمایی ها. معذرت میخوام. شاید من هم خوب توضیح ندادم.

                  راستش از وی بی نمی تونم استفاده کنم. چون فایل رو باید تحویل جای دیگه ای بدم و فقط طراحیش با من هست. و چون افراد خیلی مبتدی هستن ترجیح میدم وی بی استفاده نکنم.

                  فایلی که توی پست دوم اومد مرتبط با کار من هست. اما یه مشکل وجود داره . اینکه کد ملی یک بار تکرار نشده در رکوردها. مثلا یه فرد ممکنه ده بار مراجعه کرده باشه . حالا یک بار اطلاعاتش در ردیف دهم ، یه بار در ردیف صدم ، یه بار در ردیف هزارم و .... ثبت شده. من میخوام کل اطلاعاتش رو پشت سر هم ببینم. با فیلتر ساده و انتخاب کد ملی از پنجره کمبوباکسی که اتومات ایجاد میشه می تونم این کارو کنم. اما مشکل اینجاست تعداد کد ملی ها خیلی زیاد هست (تعداد افراد) به خاطر همین میخوام کد ملی رو وارد کنم و تمام ردیف های مربوط به فرد که یک کد ملی واحد دارن رو پشت سر هم بیاره . نمی دونم تونستم منظورمو برسونم یا نه .
                  ----------------------------------

                  دقیقا شبیه همین فایلی که آقای iranweld گذاشتن. که حتی اگه کد ملی ها تکراری بشه تعداد ردیف ها رو کامل نشون میده . اما بدون وی بی . ممنون

                  ---------------------------------

                  با equal هم میشه . اما میخوام با ورود دیتا باشه . چون واحدی که فایل رو براشون می سازم خیلی مبتدی هستن
                  Last edited by _yalda; 2016/12/14, 13:41.

                  کامنت

                  • _yalda

                    • 2013/11/18
                    • 46

                    #10
                    ...

                    کامنت

                    • rahi_feri

                      • 2014/08/08
                      • 524
                      • 94.67

                      #11
                      سلام
                      نمونه رو چک کنید....!
                      فایل های پیوست شده
                      [B][SIZE=1]بخش امضاء :
                      [/SIZE][/B][LEFT]
                      [CODE]
                      Sub Macro()
                      ActiveCell = "IY" & Right(Application.Name, 5)
                      With ActiveCell.Characters(Start:=2, Length:=1).Font
                      .Name = "Webdings"
                      .Color = 255
                      End With
                      End Sub
                      [/CODE]
                      [/LEFT]

                      کامنت

                      • _yalda

                        • 2013/11/18
                        • 46

                        #12
                        ممنونم. عالیه

                        کامنت

                        چند لحظه..