جدا سازی داده ها با چندین شرط

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

    • 2016/11/29
    • 31

    [حل شده] جدا سازی داده ها با چندین شرط

    سلام مجدد ...

    اول از همه بازم از همه دوستان مخصوصا "rahi_feri" عزیز بابت راهنمایی ها و کمک هاشون تشکر میکنم ...

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

    شرط ها به این صورت هستند که : رگبار هایی که ارتفاع بارندگی آن کم تر از 12.7 میلی متر و بیش از شش ساعت با رگبار های دیگر فاصله داشته باشند حذف می شوند، مگر اینکه مقدار بارش در طی 15 دقیقه حداقل 6.3 میلی متر بوده و یا حداکثر 15 دقیقه ای آن 24 میلی متر در ساعت یا بیش تر باشد.

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

    فایل های پیوست شده
  • rahi_feri

    • 2014/08/08
    • 524
    • 94.67

    #2
    سلام
    توضیح داده شده واضح نیست.!
    لطفا روی علاوه بر توضیح روی فایل یک نمونه خروجی مورد انتظارتون رو نشون بدید!
    از مفاهیمی که به نظرتون لازمه تعریفی بیارید!
    [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]

    کامنت

    • Cookie

      • 2016/11/29
      • 31

      #3
      نوشته اصلی توسط rahi_feri
      سلام
      توضیح داده شده واضح نیست.!
      لطفا روی علاوه بر توضیح روی فایل یک نمونه خروجی مورد انتظارتون رو نشون بدید!
      از مفاهیمی که به نظرتون لازمه تعریفی بیارید!

      واقعا شرمنده اگه نتونستم منظورمو برسونم ..

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

      برای شرط اول باید رگبارهای یک دقیقه ای با هم جمع بشن (ستون ارتفاع) بعد فاصله زمانی اون ها چک بشه (ستون زمان)، که اون باران هایی که
      ارتفاع بارندگیش کم تر از 12.7 میلی متر و بیش از شش ساعت با باران های دیگر فاصله داشته باشند حذف بشن (مثلا اون سلول ها قزمز بشن) .
      حالا شرط بعدی وارد میشه میگه که از این بارون هایی که حذف شدن اگه دارای یه 15 دقیقه (جمع 15 تا یک دقیقه ای -ستون زمان) با حداقل ارتفاع 6.3 میلی متر باشن هم نیاز به حذف شدن ندارن.

      امیدوارم تونسته باشم خوب توضیح بدم ..
      صمیمانه از کمک هاتون سپاسگزارم ...

      کامنت

      • iranweld

        • 2015/03/29
        • 3341

        #4
        یک نمونه برای یک روز مشخص را انجام بدید تا روش اجرا برای دوستان مشخص شود

        کامنت

        • Cookie

          • 2016/11/29
          • 31

          #5
          نوشته اصلی توسط iranweld
          یک نمونه برای یک روز مشخص را انجام بدید تا روش اجرا برای دوستان مشخص شود
          خدمت شما ..
          فایل های پیوست شده

          کامنت

          • rahi_feri

            • 2014/08/08
            • 524
            • 94.67

            #6
            سلام
            لطفا چک کنید اگر درست بود بپرسید فرآیندش چطوریه!
            اگه نمونه هایی پیدا کردید که غلطه لطفا اون قسمت رو توضیح بدید!
            ممنون
            لینک فایل (به دلیل حجم بالا در خارج از انجمن آپلود شد)
            Data_Soton_Emame
            [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]

            کامنت

            • Cookie

              • 2016/11/29
              • 31

              #7
              نوشته اصلی توسط rahi_feri
              سلام
              لطفا چک کنید اگر درست بود بپرسید فرآیندش چطوریه!
              اگه نمونه هایی پیدا کردید که غلطه لطفا اون قسمت رو توضیح بدید!
              ممنون
              لینک فایل (به دلیل حجم بالا در خارج از انجمن آپلود شد)
              Data_Soton_Emame
              سپاس از توجه شما ..

              متاسفانه درست نیست ... مثلا همین بارون اولی که من حذف کردم چون مجموع رگبار ها کمتر از 12.7 شده بود (10.53) و شدت 15 دقیقه ای 6.3 هم نداشت رو به عنوان "قبول" در نظر گرفته ...( 1367/07/24)

              یا مثلا در تازیخ 1367/08/18 با اینکه همه در یک روز و پشت سر هم هستند ولی جدا در نظر گرفته شده (عکس پایین)



              این عمل تو بارون های 1367/08/22 و 1367/08/28 هم اتفاق افتاده که باید همه "قبول" در نظر گرفته می شد.

              بارون 1367/08/19 هم شرط لازم 12.7 و هم شدت 15 دقیقه ای 6.3 رو نداره و باید حذف می شد.

              همین اولا رو که نگاه کردن بارون های 1369/12/15 و 1369/12/16 کاملا درست تشخیص داده شده بود.

              بازم ممنون از لطفی که دارید و وقتی که میذارید ...
              فایل های پیوست شده

              کامنت

              • rahi_feri

                • 2014/08/08
                • 524
                • 94.67

                #8
                سلام
                متاسفانه درست نیست ... مثلا همین بارون اولی که من حذف کردم چون مجموع رگبار ها کمتر از 12.7 شده بود (10.53) و شدت 15 دقیقه ای 6.3 هم نداشت رو به عنوان "قبول" در نظر گرفته ...( 1367/07/24)
                که رکورد 267 در فایل پاسخ اینجانبه نشون میده که کمتر از 12.7 هست ولی شرط بیشتر از 6 ساعت رو نداره چرا ؟
                دلیل : اختلاف ساعت 11.53 از اولین ساعت اون روز 6.53 برابره 4.25 می باشد.

                یا مثلا در تازیخ 1367/08/18 با اینکه همه در یک روز و پشت سر هم هستند ولی جدا در نظر گرفته شده
                به طور مثال سطر 626 (ساعت : 5.18) قبول شده چون درسته کمتر از 12.7 می باشد ولی شرط بیشتر از 6 ساعت صادق نیست ولی سطر 627 (ساعت : 5.19) کمتر از 12.7 می باشد و هم شرط زمانی بیشتر از 6 ساعت صادقه و همینطور رکورد های بعد از اون....!
                [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]

                کامنت

                • rahi_feri

                  • 2014/08/08
                  • 524
                  • 94.67

                  #9
                  به نظرم مساله اصلی در این پاسخ قسمت شرط بیشتر از 6 ساعته!
                  دقت کنید :
                  شرط های منطقی and و or در تعاریف شروط رعایت بشند یعنی بدونید که دو شرط باید باهم برقرار باشد و یا نه یکی کافیه یا اصلا هیچکدام!
                  همچنین اولیت در شرط گذاری هم مهمه اول کوچکتر از 12.7 برقرار باشه بعد زمان بیشتر از 6 ساعت چک بشه یا ....
                  با توجه به توضیحات پست قبل بررسی کنید که کدوم شرط اشتباه بوده!
                  [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]

                  کامنت

                  • Cookie

                    • 2016/11/29
                    • 31

                    #10
                    نوشته اصلی توسط rahi_feri
                    به نظرم مساله اصلی در این پاسخ قسمت شرط بیشتر از 6 ساعته!
                    دقت کنید :
                    شرط های منطقی and و or در تعاریف شروط رعایت بشند یعنی بدونید که دو شرط باید باهم برقرار باشد و یا نه یکی کافیه یا اصلا هیچکدام!
                    همچنین اولیت در شرط گذاری هم مهمه اول کوچکتر از 12.7 برقرار باشه بعد زمان بیشتر از 6 ساعت چک بشه یا ....
                    با توجه به توضیحات پست قبل بررسی کنید که کدوم شرط اشتباه بوده!
                    فکر میکنم منظور رو اشتباه رسوندم...
                    منطور از این فاصله 6 ساعت، فاصله بین دو بارندگی هست ولی در فرمول نوشته شده از اول بارندگی در نظر گرفته شده ...

                    مثلا باران اول در تاریخ 1367/07/24 از ساعت 06:53:00 شروع شده و تا 11:18:00 ادامه داشته و این میشه یک بارندگی ... بارون بعدی در تاریخ 1367/08/18 از ساعت 23:20:00 تا ساعت 17:35:00 اتفاق افتاده و این میشه بارندگی بعدی . این شرط 6 ساعت برای فاصله بین این و بارندگی محاسبه میشه و چون هر دو کمتر از 12.7 میلی متر بارون داشتند و بیش از 6 ساعت با هم اختلاف دارند حذف میشن.

                    بارون بعدی در تاریخ 1367/08/19 از ساعت 19:59:00 شروع شده و تا 21:30:00 ادامه داشته ... اینم چون 12.7 نشده و شش ساعت هم فاصله داره حذف میشه ..(این سه تا شرط بعدی هم ندارند)

                    بارون بعدش درتاریخ 1367/08/22 از ساعت 00:47:00 شروع شده و تا 100 ادامه داشته .... این بارون چون بیش از 12.7 هست مورد قبول هست ...(کل باران روز 1367/08/22 مورد قبول هست .. چون جمع یک دقیقه ای های اون بیشتر از 12.7 هست )

                    حالا ممکن هست یک بارون دو روز هم طول کشیده باشه ! ولی یک بارون محسوب میشه ...

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

                    امیدوارم تونسته باشم موضوع رو روشن تر کنم ...

                    کامنت

                    • rahi_feri

                      • 2014/08/08
                      • 524
                      • 94.67

                      #11
                      سلام
                      چک کنید.... برخی از مواردی که گفتید دارای ابهام است!

                      Data_Soton_Emame 2
                      Last edited by rahi_feri; 2016/12/05, 19:58.
                      [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]

                      کامنت

                      • Cookie

                        • 2016/11/29
                        • 31

                        #12
                        نوشته اصلی توسط rahi_feri
                        سلام
                        چک کنید.... برخی از مواردی که گفتید دارای ابهام است!

                        Data_Soton_Emame 2
                        شما واقعا فوق العاده اید ...!

                        عالی بود ... خیلی خیلی ممنونم ...

                        فقط بارون تاریخ 1367/08/18 ساعت 05/35 ب.ظ هست و بارون تاریخ 1367/08/19 ساعت 07/59 ب.ظ اینها هم بیشتر از 6 ساعت اختلاف دارند و نباید جمع بسته میشدن ...
                        بقیش بی نقص جدا شده بودن ..

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


                        بازم ممنون ... خدا خیرتون بده ...

                        کامنت

                        • rahi_feri

                          • 2014/08/08
                          • 524
                          • 94.67

                          #13
                          سلام
                          لطفا چک کنید برخی موارد اصلاح شد (برخی از نتایج تغییر پیدا کرده حتما چک کنید!)! امیدوارم پاسخ مورد نظرتون باشه!
                          امیدوارم که روشی راحت تر برای انجام کارتون پیدا کنید!
                          در مورد روال و اولویت انجام کارها توضیحی دادم (تصویری) ...

                          03
                          [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]

                          کامنت

                          • Cookie

                            • 2016/11/29
                            • 31

                            #14
                            نوشته اصلی توسط rahi_feri
                            سلام
                            لطفا چک کنید برخی موارد اصلاح شد (برخی از نتایج تغییر پیدا کرده حتما چک کنید!)! امیدوارم پاسخ مورد نظرتون باشه!
                            امیدوارم که روشی راحت تر برای انجام کارتون پیدا کنید!
                            در مورد روال و اولویت انجام کارها توضیحی دادم (تصویری) ...

                            03
                            کارتون عالی بود و حرف نداشت ...

                            سپاس فراوان ...

                            کامنت

                            چند لحظه..