Page 1 of 2 1 2 LastLast
Results 1 to 10 of 15

Thread: Generate Wafermap from UF200 probe tsk binary files

  1. #1
    Seeker tik's Avatar
    Join Date
    Apr 2019
    Posts
    10
    Articles
    0
    Excel Version
    2010

    Post Generate Wafermap from UF200 probe tsk binary files



    Register for a FREE account, and/
    or Log in to avoid these ads!

    I have been given raw binary data from the UF 200 probe machines and supposed to generate Wafermap from them . I'm stuck at displaying the Wafermap, some other details have been retrieved. Find attached my code, the expected output and my current output. Thanks


    password for HYN_SummaryGenerate_Tool-R001 is: 10250811
    usage:
    Two folders are created in the same directory of the HYN Summary Generate tool namely : TSK and SummaryReport. The TSK folder contains the binary data. The SummaryReport contains the outcome after program is run.


    ps: please I'm a newbie to VBA kindly correct any errors and help me achieve the expected output. Thnks

    docs.zip

    HYN_SummaryGenerate_Tool-R001.xlsm

  2. #2
    Wizard Pecoflyer's Avatar
    Join Date
    Oct 2011
    Location
    Brussels Belgium
    Posts
    1,636
    Articles
    0
    Excel Version
    2010 on Xubuntu
    Links added by OP
    Last edited by Pecoflyer; 2019-04-13 at 02:15 PM.
    Thank you Ken for this secure forum.

  3. #3
    Seeker tik's Avatar
    Join Date
    Apr 2019
    Posts
    10
    Articles
    0
    Excel Version
    2010
    Thanks for heads up! Very sorry for violating rules here. I apologize and will heed to the advice . Thanks

  4. #4

  5. #5
    Super Moderator p45cal's Avatar
    Join Date
    Dec 2012
    Posts
    1,523
    Articles
    0
    Excel Version
    365
    You have a line:
    Range(Cells(MinRow, MinColumn), Cells(MaxRow, MaxColumn)).CurrentRegion.Copy
    which only copies a single blank cell. Test whether:
    Range(Cells(MinRow, MinColumn), Cells(MaxRow, MaxColumn)).Copy
    does what you want it to.

  6. #6
    Seeker tik's Avatar
    Join Date
    Apr 2019
    Posts
    10
    Articles
    0
    Excel Version
    2010
    thanks for the response. please I got this error below when I made the correction as you suggested:
    Click image for larger version. 

Name:	excelVba.JPG 
Views:	15 
Size:	15.5 KB 
ID:	9033

    here's the debug highlight :
    Click image for larger version. 

Name:	excelVba2.JPG 
Views:	15 
Size:	37.8 KB 
ID:	9034

    thanks

  7. #7
    Super Moderator p45cal's Avatar
    Join Date
    Dec 2012
    Posts
    1,523
    Articles
    0
    Excel Version
    365
    I'm surprised that it selects all the cells for copying.
    What are the values of MinRow, MaxRow, MunColumn and Max Column at that point?
    If the sheet you're copying from is largely empty then these values could return the entire sheet, but when I ran your code there was plenty on the sheet; cell AX52 was roughly in the middle of a lot of green cells.
    Last edited by p45cal; 2019-04-13 at 09:24 PM.

  8. #8
    Super Moderator p45cal's Avatar
    Join Date
    Dec 2012
    Posts
    1,523
    Articles
    0
    Excel Version
    365
    Send us another binary file where the resulting green circle of cells will differ in size from the one we already have, so that we can test the copying process on a different size of range of cells.
    At the moment, I see the most reliable method of determining the size of the range to be copied is to assign values to MaxRow, MinRow, MaxColumn and MinColumn in the loop that does the writing of data to that sheet.
    Something like this:
    Code:
        MinRow = 2000000000#: MinColumn = 2000000000#: MaxRow = 0: MaxColumn = 0
        If Angle = "0กใ" Then
            For i = 1 To rowsize
                For j = 1 To columnsize
                    If Map(i, j, 2) <> 0 Then
                        Sheets(sheetname).Cells(i, j) = Map(i, j, 1)
                        If d.exists(Int(Map(i, j, 1))) = True Then d(Int(Map(i, j, 1))) = d(Int(Map(i, j, 1))) + 1
                        Sheets(sheetname).Cells(i, j).Interior.ColorIndex = Map(i, j, 2)
                        If i < MinRow Then MinRow = i
                        If i > MaxRow Then MaxRow = i
                        If j < MinColumn Then MinColumn = j
                        If j > MaxColumn Then MaxColumn = j
                    End If
                    DoEvents
                Next j
            Next i
        End If  '-----------------------------------------Rotate 0
    then delete the later:
    Code:
        MinRow = Range("ax52").End(xlUp).Row
        MinColumn = Range("ax52").End(xlToLeft).Column
        MaxRow = Range("ax52").End(xlDown).Row
        MaxColumn = Range("ax52").End(xlToRight).Column
    Then copy the range with:
    Code:
    Range(Sheets(sheetname).Cells(MinRow, MinColumn), Sheets(sheetname).Cells(MaxRow, MaxColumn)).Copy Sheets(FormatSheet).Range("G4")
    (no selecting needed at all).

    Another way of doing this is to delete the Map Sheet, then create a new one, instead of just clearing/deleting the cells in it. That way, that sheet's .usedrange would be a reliable thing to copy:
    Code:
    Sheets(sheetname).UsedRange.Copy Sheets(FormatSheet).Range("G4")
    Last edited by p45cal; 2019-04-13 at 10:22 PM.

  9. #9
    Seeker tik's Avatar
    Join Date
    Apr 2019
    Posts
    10
    Articles
    0
    Excel Version
    2010
    thanks for the response. will check it out and provide feedback. Thank You

  10. #10
    Seeker tik's Avatar
    Join Date
    Apr 2019
    Posts
    10
    Articles
    0
    Excel Version
    2010
    please fin attached a different binary data and the expected output: This one is HYN170- 84S whilst the previous was HYN174-32S.
    Attached Files Attached Files

Page 1 of 2 1 2 LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •