میانگین گیری هر 24 داده به صورت خودکار

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

    • 2016/07/20
    • 40

    [حل شده] میانگین گیری هر 24 داده به صورت خودکار

    با سلام
    داده های اکسلی زیادی دارم به طوری که حدود 9000 ردیف دارم
    این داده ها بر اساس 24 ساعت شبانه روز هستن
    حال اگر بخواهم هر 24 ساعت میانگین گیری کنم راه حلی هست که به صورت خودکار اجرا بشه؟
    اول هر 24 ساعت میخوام بعد 48 ساعت بعد 72 ساعت و.....
  • 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]

    کامنت

    • sahraei

      • 2016/07/20
      • 40

      #3
      نوشته اصلی توسط sahraei
      با سلام
      داده های اکسلی زیادی دارم به طوری که حدود 9000 ردیف دارم
      این داده ها بر اساس 24 ساعت شبانه روز هستن
      حال اگر بخواهم هر 24 ساعت میانگین گیری کنم راه حلی هست که به صورت خودکار اجرا بشه؟
      اول هر 24 ساعت میخوام بعد 48 ساعت بعد 72 ساعت و.....
      اینجا هر 8 ساعت میانگین گیری شده البته به صورت دستی!!!!ولی میخوام 24 و 48 و 72 و ... هم در شیت های جداگانه خودکار انجام بدم!
      پ.ن: در فایل نمونه هر 8 ساعت کپی شده در سلول های خالی که نیاز به اینکار نیست برای 24 ساعته و ....
      میشه؟؟؟
      فایل های پیوست شده

      کامنت

      • rahi_feri

        • 2014/08/08
        • 524
        • 94.67

        #4
        سلام
        سلول های f2547 تا f2553 روند ساعتیش! اشتباهه!
        فایل رو چک کنید (البته جواب نهایی شما نیست) بگید که راضی کنندست یا چیز دیگه ای مد نظرتونه!
        فایل های پیوست شده
        [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]

        کامنت

        • sahraei

          • 2016/07/20
          • 40

          #5
          نوشته اصلی توسط rahi_feri
          سلام
          سلول های f2547 تا f2553 روند ساعتیش! اشتباهه!
          فایل رو چک کنید (البته جواب نهایی شما نیست) بگید که راضی کنندست یا چیز دیگه ای مد نظرتونه!
          دوست گرامی این کاری که شما کردید که من هم میتونستم!
          میخوام خودکار برای کل داده هام میانگین گیری انجام بشه!
          شما دستی وارد کردید!اون هم یک سلول!!!!

          کامنت

          • iranweld

            • 2015/03/29
            • 3341

            #6
            با سلام

            در فایل پیوست با اضافه شدن یک ستون به عنوان ردیف با پیوت تیبل میانگین گرفته شد.(تعداد مورد نظر را در قسمت زرد رنگ وارد کنید)


            برای هر تاریخ دقت کنید 24 ردیف هر ساعت وجود داشته باشد.

            برای هر تاریخ نیز میتوانید پیوت تیبل را فیلتر نمایید


            Click image for larger version

Name:	Untitled.png
Views:	1
Size:	130.9 کیلو بایت
ID:	131189
            فایل های پیوست شده
            Last edited by iranweld; 2016/11/16, 12:29.

            کامنت

            • amir_ts

              • 2015/03/17
              • 1247

              #7
              اینجا هر 8 ساعت میانگین گیری شده البته به صورت دستی!!!!ولی میخوام 24 و 48 و 72 و ... هم در شیت های جداگانه خودکار انجام بدم!
              پ.ن: در فایل نمونه هر 8 ساعت کپی شده در سلول های خالی که نیاز به اینکار نیست برای 24 ساعته و ....
              میشه؟؟؟
              با سلام
              دوست عزیز شما نیاز به یک ستون محاسبه دارید با فرمول زیر :
              کد PHP:
              =iferror(average(offset($c$3;(row()-row($c$3))*$e$1;0;$e$1;1));""
              و یک فرمول جایگذاری برای نمایش شکیل تر و بهتر مانند فرمول زیر:

              کد PHP:
              =iferror(offset($e$2;if(mod(row()-2;$e$1)=0;int(row()-2)/$e$1;""););""
              در سلول e1 هم میتونید اعداد رو تغییر بدید و برای 24 و 48 و 72 و....محاسبه و اعداد رو در شیت دلخواه قرار بدید.
              فایل های پیوست شده
              [SIZE=7][B][COLOR=navy][FONT=IranNastaliq]ای برادر تو همه اندیشه ای[/FONT][/COLOR][/B][/SIZE]

              کامنت

              • sahraei

                • 2016/07/20
                • 40

                #8
                نوشته اصلی توسط iranweld
                با سلام

                در فایل پیوست با اضافه شدن یک ستون به عنوان ردیف با پیوت تیبل میانگین گرفته شد.(تعداد مورد نظر را در قسمت زرد رنگ وارد کنید)


                برای هر تاریخ دقت کنید 24 ردیف هر ساعت وجود داشته باشد.

                برای هر تاریخ نیز میتوانید پیوت تیبل را فیلتر نمایید


                [ATTACH=CONFIG]13266[/ATTACH]
                جواب عالی بود فقط مشکلی که هست اینه من 20 تا ستون و 3 شیت جدا دارم یعنی به عبارتی میشه 60 ستون!
                باید تک به تک استخراج کنم بیارم تو فایل شما تا جواب بده.
                ضمن اینکه بعضی از روزها 24 ساعت نیست و فقط 5-6 ساعت دارم که خب میخوام همون روزهارو میانگین بگیره که دستی میشه انجام داد اون چندتارو ولی
                مثلا ردیف 2622 تا 2627 فقط مربوط به یک روزه ولی روش شما اومده 24 تارو در نظر گرفته.
                روش دیگه ای نیست؟

                کامنت

                • sahraei

                  • 2016/07/20
                  • 40

                  #9
                  نوشته اصلی توسط amir_ts
                  با سلام
                  دوست عزیز شما نیاز به یک ستون محاسبه دارید با فرمول زیر :
                  کد PHP:
                  =iferror(average(offset($c$3;(row()-row($c$3))*$e$1;0;$e$1;1));""
                  و یک فرمول جایگذاری برای نمایش شکیل تر و بهتر مانند فرمول زیر:

                  کد PHP:
                  =iferror(offset($e$2;if(mod(row()-2;$e$1)=0;int(row()-2)/$e$1;""););""
                  در سلول e1 هم میتونید اعداد رو تغییر بدید و برای 24 و 48 و 72 و....محاسبه و اعداد رو در شیت دلخواه قرار بدید.
                  جوابتون خیلی عالی و خوب بود
                  فقط اینکه چون جواب جلو تاریخ درج نمیشه باعث افزایش احتمال خطا میشه.
                  امکانش نیست که میانگین گیری جلو تاریخ درج بشه؟مثلا نشون بده که این 24 ساعت مربوط به این روزه.
                  ضمن اینکه بعضی روزها 5-6 ساعت بیشتر نداره و ناچارم همین ها رو تو میانگین درنظر بگیرم ولی خب برای 48 ساعت در حقیقت 48 ساعت واقعی ندارم!!! 30 ساعت دارم!
                  برای اونها چه راه حلی هست؟
                  مگر اینکه ردیف هایی اضافه کنم تا 24 ساعت کامل بشه ولی سلولش خالی باشه مثل داده های گم شده ای که هست

                  کامنت

                  • amir_ts

                    • 2015/03/17
                    • 1247

                    #10
                    امکانش نیست که میانگین گیری جلو تاریخ درج بشه؟مثلا نشون بده که این 24 ساعت مربوط به این روزه.
                    میشه ستون رو جابه جا کرد...

                    ضمن اینکه بعضی روزها 5-6 ساعت بیشتر نداره و ناچارم همین ها رو تو میانگین درنظر بگیرم ولی خب برای 48 ساعت در حقیقت 48 ساعت واقعی ندارم!!! 30 ساعت دارم!
                    برای اونها چه راه حلی هست؟
                    مگر اینکه ردیف هایی اضافه کنم تا 24 ساعت کامل بشه ولی سلولش خالی باشه مثل داده های گم شده ای که هست


                    مبنای محاسبه فرمول بصورت سری بر اساس شماره ردیف میباشد یعنی به ترتیب اولین عدد تا آخرین عدد در ستون مورد نظر بر اساس مشخص کردن تعداد ردیف (زمان) در سلول F1 هست .
                    فرمول رو نمیشه زیاد تغییر داد شما داده هاتون رو در ستون a تغییر( اضافه یا کم کنید ) تا به نتیجه مطلوب برسید.

                    فایل های پیوست شده
                    [SIZE=7][B][COLOR=navy][FONT=IranNastaliq]ای برادر تو همه اندیشه ای[/FONT][/COLOR][/B][/SIZE]

                    کامنت

                    • sahraei

                      • 2016/07/20
                      • 40

                      #11
                      نوشته اصلی توسط amir_ts
                      میشه ستون رو جابه جا کرد...



                      مبنای محاسبه فرمول بصورت سری بر اساس شماره ردیف میباشد یعنی به ترتیب اولین عدد تا آخرین عدد در ستون مورد نظر بر اساس مشخص کردن تعداد ردیف (زمان) در سلول F1 هست .
                      فرمول رو نمیشه زیاد تغییر داد شما داده هاتون رو در ستون a تغییر( اضافه یا کم کنید ) تا به نتیجه مطلوب برسید.

                      [/COLOR][/RIGHT]
                      خیلییییییییییییییییییییی متشکرم جوابتون خیلی کمکم میکنه.فقط اینکه چون مبتدی هستم نمیتونم برای کل داده هام اجرا کنم!!!!!!!!
                      میشه روش اجرا شدن برای کل داده ها بگید؟چون ستون ها مختلفی دارم با اسم ها مختلف.
                      ضمن اینکه کدهای php هم کپی کردم ولی نتوانستم
                      واقعا خدا خیرتون بده که راه حل به این ساده ای در اختیارم گذاشتید

                      پ.ن:من الان متوجه شدم ماکرویی که شما تهیه کردید نهایت 72 ساعت است
                      ببخشید اذیتتون میکنم.
                      دقیقا این مواردو میخوام میخوام: 8 ساعته.24 ساعته. هفتگی که میشه 168 ساعت.ماهانه که میشه 720 ساعت!
                      Last edited by sahraei; 2016/11/18, 14:15.

                      کامنت

                      • amir_ts

                        • 2015/03/17
                        • 1247

                        #12
                        پ.ن:من الان متوجه شدم ماکرویی که شما تهیه کردید نهایت 72 ساعت است
                        ببخشید اذیتتون میکنم.
                        دقیقا این مواردو میخوام میخوام: 8 ساعته.24 ساعته. هفتگی که میشه 168 ساعت.ماهانه که میشه 720 ساعت!
                        با سلام
                        دوست عزیز این ها توابع موجود در اکسل هست و من از هیچ ماکرویی استفاده نکردم.
                        شما باید تمام اطلاعات رو که میخواهید میانگین بگیرید مانند فایل نمونه در یک ستون قرار بدید.
                        ضمنا شما هر عددی که قرار بدید در اصل تعداد میانگین محسوب میشه وقتی 8 بزارید یعنی 8 ردیف (8 ساعت) وقتی 72 بزارید یعنی 72 ردیف (72 ساعت)و ....
                        میتونید در لیست هر عددی قرار بدید من برای مثال تا 72 نوشتم و با توجه به تعداد ردیف میتونید هر عدد دلخواه قرار بدید که مبنای میانگین گیری بر اساس اون تعداد ردیف محاسبه بشه.
                        [SIZE=7][B][COLOR=navy][FONT=IranNastaliq]ای برادر تو همه اندیشه ای[/FONT][/COLOR][/B][/SIZE]

                        کامنت

                        • sahraei

                          • 2016/07/20
                          • 40

                          #13
                          نوشته اصلی توسط amir_ts
                          با سلام
                          دوست عزیز این ها توابع موجود در اکسل هست و من از هیچ ماکرویی استفاده نکردم.
                          شما باید تمام اطلاعات رو که میخواهید میانگین بگیرید مانند فایل نمونه در یک ستون قرار بدید.
                          ضمنا شما هر عددی که قرار بدید در اصل تعداد میانگین محسوب میشه وقتی 8 بزارید یعنی 8 ردیف (8 ساعت) وقتی 72 بزارید یعنی 72 ردیف (72 ساعت)و ....
                          میتونید در لیست هر عددی قرار بدید من برای مثال تا 72 نوشتم و با توجه به تعداد ردیف میتونید هر عدد دلخواه قرار بدید که مبنای میانگین گیری بر اساس اون تعداد ردیف محاسبه بشه.
                          Click image for larger version

Name:	X.png
Views:	1
Size:	66.0 کیلو بایت
ID:	131209
                          من مقدار 168 وارد میکنم ارور میده.فکر کنم باید تعریف بشه؟

                          کامنت

                          • amir_ts

                            • 2015/03/17
                            • 1247

                            #14
                            نوشته اصلی توسط sahraei
                            [ATTACH=CONFIG]13294[/ATTACH]
                            من مقدار 168 وارد میکنم ارور میده.فکر کنم باید تعریف بشه؟
                            دوست عزیر من از لیست کشویی استفاده کردم به همین دلیل شما در این قسمت نمیتونید هر عددی بدید...
                            بر روی سلول F1 قرار بگیرید وبه مسیر زیر برید:
                            Data>Data validation
                            در قسمت source هر عددی که میخواهید رو مثل اون عدد ها قرار بدید که در لیست کشویی اضافه بشه بعد ok کنید و از لیست کشویی عدد رو انتخاب کنید.
                            [SIZE=7][B][COLOR=navy][FONT=IranNastaliq]ای برادر تو همه اندیشه ای[/FONT][/COLOR][/B][/SIZE]

                            کامنت

                            • sahraei

                              • 2016/07/20
                              • 40

                              #15
                              انشاالله امام حسین حاجت رواتون بکنه
                              خدا خیرتون بده
                              متشکرمممممممممممممممممممممم

                              کامنت

                              چند لحظه..