اداغام چند سلول متنی بر اساس یک شرط در یک سلول دیگر

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

    • 2015/09/10
    • 8

    پرسش اداغام چند سلول متنی بر اساس یک شرط در یک سلول دیگر

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

    یک فایل دیتایی دارم که حدودا 2000 رکورد داره و من میخوام :
    1-جمع هر کالا در یک شیت دیگر قرار گیرد
    2-در یک سلول مقابل جمع در هر ردیف شماره پروژه های درخواست کنندگان اون کالا درج بشود
    نمونه فایل را پیوست کردم شامل دو شیت دیتا و خروجی
    فایل های پیوست شده
  • mrhartsclube

    • 2017/11/15
    • 130
    • 81.00

    #2
    سلام دوست عزیز

    تابع مد نظر شما:

    کد PHP:
    Sub Collect()

    Dim i As LongAs IntegerAs Integer

    Dim Found 
    As Boolean

    1

    1

    2

    Dim Objects
    () As StringCounts() As LongProjNum() As String

    ReDim Objects
    (1)

    ReDim Counts(1)

    ReDim ProjNum(1)

    Objects(k) = (Worksheets("data").Cells(i"C"))

    Counts(k) = (Worksheets("data").Cells(i"D"))

    ProjNum(k) = (Worksheets("data").Cells(i"B"))

    3

    While (Worksheets("data").Cells(i"C") <> "")

          
    Found False

        
    For 1 To UBound(Objects)

            If 
    Objects(j) = Worksheets("data").Cells(i"C"Then

                  Counts
    (j) = Val(Counts(j)) + Val((Worksheets("data").Cells(i"D")))

                  
    ProjNum(j) = ProjNum(j) & " " & (Worksheets("data").Cells(i"B"))

                  
    Found True

                  
    Exit For

            
    End If

        
    Next j

        
    If Not Found Then

              k 
    1

            ReDim Preserve Objects
    (k)

            
    ReDim Preserve Counts(k)

            
    ReDim Preserve ProjNum(k)

            
    Objects(k) = (Worksheets("data").Cells(i"C"))

            
    Counts(k) = (Worksheets("data").Cells(i"D"))

            
    ProjNum(k) = (Worksheets("data").Cells(i"B"))

        
    End If

        
    1

    Wend

    For 1 To UBound(Objects)

        
    Worksheets("out").Cells(1"A").Value Objects(i)

        
    Worksheets("out").Cells(1"B").Value Counts(i)

        
    Worksheets("out").Cells(1"C").Value ProjNum(i)

    Next i

    End Sub 
    [CENTER][COLOR=#696969][FONT=lucida console]... [B]Programming [/B]C# - VB.Net - VC++ - ASP.Net - HTML - CSS - JS - AS2 - AutoIt - Pascal - Delphi - PHP - Python - VBA - Etc
    [/FONT][/COLOR][SIZE=2][FONT=lucida console][COLOR=#808080]... 2D & 3D [B]Graphic Designer[/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] 2D & 3D [B]Animator [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Game [/B]Designer & [B]Hacker [/B][/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] Data [B]Forensic [/B]Expert [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Ethical [/B]Hacker [/COLOR][COLOR=#ff0000][B]|[/B][/COLOR][COLOR=#808080] [B]Pen[/B] Tester

    [/COLOR][/FONT][/SIZE][COLOR=#ff0000][FONT=courier new][SIZE=4][B].: Expert in doing what nobody else can :.[/B][/SIZE][/FONT][/COLOR][/CENTER]

    کامنت

    چند لحظه..