پیدا کردن اعداد تکراری بر اساس تاریخ در دو شیت

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • khani61

    • 2019/04/29
    • 5
    • 18.00

    پرسش پیدا کردن اعداد تکراری بر اساس تاریخ در دو شیت

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

    • 2018/04/23
    • 677

    #2
    نوشته اصلی توسط khani61
    با سلام خدمت همه اساتید
    من یک فایل دارم که دو شیت متفاوت داره یکی مربوط به گزارش خودم و یکی رو هم بانک داده حالا میخوام از توی این دوتا شیت بیاد خودش بر اساس تاریخ بگرده و مبالغ مشابه رو پیدا کنه و اونها توی شیت بانک هایلایت کنه.
    اگر این امکان وجود داشته باشه که توی ستون توضیحات توی شیت مربوط به بانک بگه که این عدد رو از کدوم ردیف شیت گزارشی آورده عالی میشه.
    ممنون میشم راهنمایی کنید
    سلام
    می تونید از کد زیر استفاده کنید :
    کد:
    Sub fndd()
    lrow1 = Sheets(1).Range("c" & Rows.Count).End(xlUp).Row
    lrow2 = Sheets(2).Range("h" & Rows.Count).End(xlUp).Row
    For m1 = 2 To lrow1
        For m2 = 2 To lrow2
            If Sheets(1).Range("c" & m1) = Sheets(2).Range("h" & m2) Then
                Sheets(1).Range("c" & m1).Interior.ColorIndex = 41
                Sheets(1).Range("n" & m1) = ChrW(1585) & ChrW(1583) & ChrW(1740) & ChrW(1601) & " " & m2
            End If
        Next m2
    Next m1
    End Sub
    فایل رو ببینید، در اولین اجرا روی enable content کلیک کنید تا ماکرو ها فعال شوند.
    سپس روی باتن Find کلیک کنید.
    فایل های پیوست شده
    [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
    [/CENTER]

    کامنت

    • khani61

      • 2019/04/29
      • 5
      • 18.00

      #3
      ممنونم از راهنماییتون اما استاد من دوتا مشکل دارم
      1 - حجم دیتای من خیلی بالاست و به سختی این کار انجام میشه و تغریبا سیستم هنگ میکنه
      2- مثلا توی شیت شماره 2 دوتا عدد مشابه وجود داره در یک تاریخ این نمیتونه تشخیص بده و فقط یک ردیف رو میزنه و من میخوام تعدادی هم اینا مقایسه بشه، مثلا اگر شیت یک یدونه عدد داری اینهم یکی بزنه و اگر دوتا عدد هر دو طرف بود هر دو ردیف نوشته بشه
      Last edited by khani61; 2019/04/30, 02:24.

      کامنت

      • M_ExceL

        • 2018/04/23
        • 677

        #4
        نوشته اصلی توسط khani61
        ممنونم از راهنماییتون اما استاد من دوتا مشکل دارم
        1 - حجم دیتای من خیلی بالاست و به سختی این کار انجام میشه و تغریبا سیستم هنگ میکنه
        2- مثلا توی شیت شماره 2 دوتا عدد مشابه وجود داره در یک تاریخ این نمیتونه تشخیص بده و فقط یک ردیف رو میزنه و من میخوام تعدادی هم اینا مقایسه بشه، مثلا اگر شیت یک یدونه عدد داری اینهم یکی بزنه و اگر دوتا عدد هر دو طرف بود هر دو ردیف نوشته بشه
        خواهش میکنم
        کد زیر رو جایگزین کنید :
        کد:
        Sub fndd()
        lrown = Sheets(1).Range("n" & Rows.Count).End(xlUp).Row
        lrow1 = Sheets(1).Range("c" & Rows.Count).End(xlUp).Row
        lrow2 = Sheets(2).Range("h" & Rows.Count).End(xlUp).Row
        Application.ScreenUpdating = False
        Sheets(1).Range("n2:n" & lrown).ClearContents
        For m1 = 2 To lrow1
            For m2 = 2 To lrow2
                If Sheets(1).Range("c" & m1) = Sheets(2).Range("h" & m2) And Sheets(2).Range("h" & m2) <> "" Then
                    Sheets(1).Range("c" & m1).Interior.ColorIndex = 41
                    Sheets(1).Range("n" & m1) = Sheets(1).Range("n" & m1) & " " & ChrW(1585) & ChrW(1583) & ChrW(1740) & ChrW(1601) & " " & m2
                End If
            Next m2
        Next m1
        Application.ScreenUpdating = True
        End Sub
        [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
        [/CENTER]

        کامنت

        • khani61

          • 2019/04/29
          • 5
          • 18.00

          #5
          متاسفانه به دلیل بالا بودن حجم دیتا سیستم تغریبا هنگ میکنه، راه یا روش دیگه ای هم هست ؟

          کامنت

          • khani61

            • 2019/04/29
            • 5
            • 18.00

            #6
            ممنونم، توی این یکی دیگه تاریخ رو بررسی نمیکنه و فقط دنبال عدد میگرده

            کامنت

            • iranweld

              • 2015/03/29
              • 3341

              #7
              نوشته اصلی توسط khani61
              ممنونم، توی این یکی دیگه تاریخ رو بررسی نمیکنه و فقط دنبال عدد میگرده
              با سلام

              راحتترین کار انتقال دیتای شیت بانک به شیت اول در یک شیت دیگر میباشد فقط دیتای مورد نیاز را زیر هم کپی نموده و دیتای مورد نظر هر شیت را با یک رنگ مشخص کنید

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

              Click image for larger version

Name:	Untitled.png
Views:	1
Size:	33.0 کیلو بایت
ID:	135248
              Last edited by iranweld; 2019/04/30, 10:37.

              کامنت

              • khani61

                • 2019/04/29
                • 5
                • 18.00

                #8
                ممنونم استاد، مشکل اینجاست هجم دیتای من خیلی زیاده، اینجوری خیلی وقت گیر میشه

                کامنت

                • M_ExceL

                  • 2018/04/23
                  • 677

                  #9
                  نوشته اصلی توسط khani61
                  ممنونم، توی این یکی دیگه تاریخ رو بررسی نمیکنه و فقط دنبال عدد میگرده
                  سلام
                  اگر میشه فایلتون رو بزارید، و اینکه بفرمایید که در شیت دوم کدوم ستون تاریخ باید بررسی بشود؟
                  تاریخ پرداختی، یا تاریخ ثبت؟
                  و بفرمایید منظور از بررسی تاریخ اینه که در یک تاریخ، ممکنه چندین بار یک مبلغ رو داشته باشید؟
                  دیتاتون چند ردیف هست؟ بنده کد رو بهینه ترش میکنم مشکل سرعت نباید باشه.
                  ببینید در کل بهتر است فایل شما بررسی بشود واینکه خواستتون رو دقیق مطرح کنید.
                  در خدمتیم.
                  [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
                  [/CENTER]

                  کامنت

                  چند لحظه..