بررسی شروط

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

    • 2014/07/10
    • 336

    [حل شده] بررسی شروط

    با سلام خدمت اساتید گرامی

    سپاسگذار میشم سوال من رو پاسخ بدید.

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

    • 2014/07/10
    • 336

    #2
    لطفا کمک

    کامنت

    • fokker

      • 2014/07/10
      • 336

      #3
      با سلام خواهشمندم کد نویسی شیت گزارش را بررسی فرمایید سپاس

      کامنت

      • Amir Ghasemiyan

        • 2013/09/20
        • 4599
        • 100.00

        #4
        نوشته اصلی توسط fokker
        لطفا کمک

        دوست عزيز براي دريافت پاسختون عجله نكنيد. شما با ارسال اين پست تاپيك خودتون رو از ليست تاپيك هاي بي پاسخ خارج ميكنيد و پيدا كردن سوال براي اساتيدي كه زحمت پاسخگويي ميكشند سخت ميشه

        و اما جواب

        كد شما چند اشكال اساسي داره:
        1- محدوده هايي كه تعريف كرديد اشتباهه : f4:A20000 و f5:A20000
        2- شما محدوده حلقه رو گذاشتيد ماه ها اما داخل ايف گفتيد مقدار سلول رو با سال (سلول H1) مقايسه كن كه قطعا پاسخ منفي هست
        3- شرط دوم گفتيد آفست 12 در حالي كه آفست 12 ميشه ستون سال نه ستون true / false

        اين موارد رو اصلاح بفرماييد مشكلتون حل ميشه

        کامنت

        • fokker

          • 2014/07/10
          • 336

          #5
          با سلام و ممنون از توصیه شما استاد گرامی.

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

          کامنت

          • Amir Ghasemiyan

            • 2013/09/20
            • 4599
            • 100.00

            #6
            نوشته اصلی توسط fokker
            با سلام و ممنون از توصیه شما استاد گرامی.

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

            خدمت شما دوست گرامي

            کد:
            Sub TEST()
            
            
            Sheets("Gozaresh").Range("A4:F20000").ClearContents
            
            
            Sheets("Gozaresh").Range("A5:F20000").Clear
            
            
            Set Rng = Range("Table2[ãÇå]")
            
            
            k = 4
            
            
            For Each cell In Rng
            
            
            If cell.Offset(, 10) = False _
                And Sheets("Gozaresh").Range("H2") = cell.Offset(, 3) _
                And Sheets("Gozaresh").Range("H3") = cell.Offset(, 2) _
                And Sheets("Gozaresh").Range("H4") = cell.Offset(, 7) Then
            
            
            Sheets("Gozaresh").Range("f" & k) = k - 3
            
            
            Sheets("Gozaresh").Range("E" & k) = cell.Offset(, 4)
            Sheets("Gozaresh").Range("D" & k) = cell.Offset(, 2)
            Sheets("Gozaresh").Range("C" & k) = cell.Offset(, 5)
            Sheets("Gozaresh").Range("B" & k) = cell.Offset(, 8)
            
            
            k = k + 1
            
            
            End If
            
            
            Next
            
            
            Macro1
            
            
            End Sub

            کامنت

            • fokker

              • 2014/07/10
              • 336

              #7
              کد:
              Set Rng = Range("Table2[گروه]")
              
              k = 4
              
              
              For Each cell In Rng
              
              
              If cell = Sheets("Gozaresh").Range("H3") And cell.Offset(, 10) = False _
                    And Sheets("Gozaresh").Range("H2") = cell.Offset(, 3) _
                    And Sheets("Gozaresh").Range("H1") = cell.Offset(, 12) _
                    And Sheets("Gozaresh").Range("H4") = cell.Offset(, 7) Then

              قسمت زیر نفهمیدم باید چی کار کنم کد زیر رو مشابه نمونه های اساتید قبلی تغییر دادم.
              کد:
              Sheets("Gozaresh").Range("f4:A20000").ClearContents
              
              Sheets("Gozaresh").Range("f5:A20000").Clear
              - - - Updated - - -

              - - - Updated - - -

              ببخشید این کدوم محدوده میشه ؟؟ خطا میده
              کد:
              Set Rng = Range("Table2[?C?]")

              کامنت

              • Amir Ghasemiyan

                • 2013/09/20
                • 4599
                • 100.00

                #8
                كدي كه خدمتتون عرض كردم رو با كد خودتون مقايسه كنيد جواب تمام سوال هاتون رو ميگيريد. تغييرات عمده اي در كد شما اعمال نكردم كه نشه مقايسه كرد

                کامنت

                • fokker

                  • 2014/07/10
                  • 336

                  #9
                  مقایسه کردم و تغییرات رو اعمال کردم اما مجددا جواب نداد
                  فایل های پیوست شده

                  کامنت

                  • Amir Ghasemiyan

                    • 2013/09/20
                    • 4599
                    • 100.00

                    #10
                    نوشته اصلی توسط Amir Ghasemiyan

                    دوست عزيز براي دريافت پاسختون عجله نكنيد. شما با ارسال اين پست تاپيك خودتون رو از ليست تاپيك هاي بي پاسخ خارج ميكنيد و پيدا كردن سوال براي اساتيدي كه زحمت پاسخگويي ميكشند سخت ميشه

                    و اما جواب

                    كد شما چند اشكال اساسي داره:
                    1- محدوده هايي كه تعريف كرديد اشتباهه : f4:A20000 و f5:A20000
                    2- شما محدوده حلقه رو گذاشتيد ماه ها اما داخل ايف گفتيد مقدار سلول رو با سال (سلول H1) مقايسه كن كه قطعا پاسخ منفي هست
                    3- شرط دوم گفتيد آفست 12 در حالي كه آفست 12 ميشه ستون سال نه ستون true / false

                    اين موارد رو اصلاح بفرماييد مشكلتون حل ميشه
                    مورد دومي كه اينجا گفتم رو اصلاح نكرديد. شما در سلول h1 داريد سال رو مشخص ميكنيد اما در كدي كه نوشتيد داريد ماه رو بررسي ميكنيد.

                    کد:
                    cell = Sheets("Gozaresh").Range("H1")

                    کامنت

                    • fokker

                      • 2014/07/10
                      • 336

                      #11
                      استاد عزیز من تمام تغییرات رو به زعم خودم طبق فرمایشاتتون انجام دادم . اما حقیقتا این مورد رو نمیتونم بفهمم که کجاش مشکل داره مکان داره روی فایل اصلاح و ارسال بفرمایید. سپاس
                      فایل های پیوست شده
                      Last edited by fokker; 2018/12/12, 11:52.

                      کامنت

                      • Amir Ghasemiyan

                        • 2013/09/20
                        • 4599
                        • 100.00

                        #12
                        نوشته اصلی توسط fokker
                        استاد عزیز من تمام تغییرات رو به زعم خودم طبق فرمایشاتتون انجام دادم . اما حقیقتا این مورد رو نمیتونم بفهمم که کجاش مشکل داره مکان داره روی فایل اصلاح و ارسال بفرمایید. سپاس
                        شما تو كدهاتون rng رو معادل ستون اول جدولتون يعني ستون ماه انتخاب كرده بوديد. و در سلول H1 سال مي نوشتيد. طبيعتا هيچ وقت اين دو تا با هم قابل مقايسه نيست.
                        حالا كدتون رو اصلاح كرديد و rng رو معادل ستون آخر يعني سال گذاشتيد ولي نكته اي كه رعايت نكرديد بقيه شروط هست. شما از تابع offset استفاده كرديد. اين تابع با توجه به سلول مرجع بايد اصلاح بشه كه نكرديد. اصلاح شده و نهايي شده فايل پيوست ميكنم بررسي بفرماييد


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

                        کامنت

                        • fokker

                          • 2014/07/10
                          • 336

                          #13
                          بسیار سپاسگذارم استاد عزیز

                          کامنت

                          چند لحظه..