Tuesday, 11 December 2012

Week 9 - 11 Dec 2012 - Tue

40th day at SSMC.

Today did not have much to do. Most of my free time were spent on thinking and thinking for possible solutions to replace the 3 macros. So nothing much was done today.

Just that, I had help to update one Excel file on the wafer chipping data for Xu Fang. I had checked the lot ID of the data and then indicated the ID of the affected wafers, total affected wafer quantity that is the number of wafers and the location of the wafer chipping.

After finishing the task, I sent the completed database to Xu Fang.

And until around late afternoon, my manager had came over and assigned me a new task. LOL. The task was to organize and plan some games for the 31st December's outing. My manager was too busy to take care of this so she had assigned it to me. Apparently, I got too free today. Hahaha. (^^)

Anyway, I had browsed through and read up the !nsight! in the company internet's corporate intranet for ideas. However, not much ideas was gotten from there. Guess I can only think more now. -.-

Monday, 10 December 2012

Week 9 - 10 Dec 2012 - Mon

39th day at SSMC.

Today is the beginning of the second half of the attachment period. With the ending of last Friday, half of the attachment period was gone too.

As I have concluded on last Friday, I have 3 macros completely replaced with formula, 2 macros combined into 1, 1 macro edited to suit my requirement. As for the last 3 macros, I wasn't able to replace them with formula and was using them as they were.

The 3 macros were macro 6, 7 & 9 and macro 6 & 9 were working fine in my version of Excel file. However, as for macro 7, I wasn't able to get it to work in my version of Excel file. Thus, since last week I had been editing macro 7's programming to make it work.

However, while running macro 7, my computer kept 'hanging'. The Excel program kept getting restarted. I was totally clueless why this is happening. I had double and double checked the program but still could not find out what is wrong with the program.

On the other hand, my manager had came over to ask me to search for the available lunch buffets on the 31st of December. And thus, I had ignored the Excel file, for the time being, and went to search and call the several hotels and restaurants for the availability of the promotions and the details of the buffets.

I had managed to compile the buffet details just before lunch and had sent the compiled information to my manager right after lunch. And so, I had gone back to figuring out the macro 7's programming.

But, out of my expectation, macro 7 was working perfectly fine. And all I had done was to leave it alone for about 3 hours? I don't have a single idea why this is happening. Anyway, what matters most is that macro 7 is finally working.

To my surprise, I've found out that the execution time of macro 7 was actually less than 1 second. Today, was totally a surprise.

I had received another errand task to do in the late afternoon which is to go to the warehouse to get a wafer lot and passed to the OQA personnel.

After which, I was considered free for the day. I had nothing to do and was only looking through at my past tasks. Hoping that I could get some ideas for macro 6, 7 & 9. Although I did some editing to these 3 macros, I still hope to find some way to replace them with formula if possible.

So, I guess starting tomorrow until the end of this week, I will have to think hard and real hard for the 3 macros. Hope that I will have ways to deal with them. (^^)

Friday, 7 December 2012

Week 8 - 07 Dec 2012 - Fri

38th day at SSMC.

Today, I have compiled everything that I have done for this week in a PowerPoint. In the PowerPoint, the details that I have included are:

-Mind map on how the Excel files' spreadsheet are linked that is where did the macro extract data from and where did it insert into.
-Detail breakdown of the macros' functions and the changes and improvements that I have done.

There is too much to share if I were to share everything in detail, thus I will briefly describe what I've done.

I have a total of 9 macros from 2 Excel files database.

For macro 6, 7 and 9, currently, I am not able to replace or edit them as I still couldn't find a way to insert data on a daily basis using formula. As formula will have cells to reference from, thus how can I update today's data without altering yesterday's data as the source of the data being extracted are the same. Can you really understand what I am talking about?

For macro 2, 3 and 8, I have fully replaced them with formula. There is a part after macro 2 where users have to manually key in the comments which is to differentiate the automotive and non-automotive parts. And as I have mentioned in yesterday's post, I had successfully created a formula to differentiate the data.

So, for these 3 macros, I have reduced the time wasted on the execution of macro by eliminating the macro, as well as reduced time wastage on manually entering of data. And results are obtained instantly after data is being pasted into the spreadsheets.

Next, for macro 4 and 5, I have combined their functions into 1 macro and also some formula are used. Macro 4 was to extract data from text file and insert into spreadsheet. As for macro 5, it was supposed to insert new columns of data after macro 4 have inserted the data, as well as to calculate values from the data.

However, I have managed to used formula to used formula to insert the new columns of data (like the ones mentioned in previous paragraphs) and also to calculate the values that are carried out by macro 5.

Moreover, I have edited macro 4's programming so that it will not alter my formula on the newly insert columns. I guess this part is also confusing for you.

Lastly, for macro 1, I just merely edited its programming, similar to macro 4, so that it will not alter the formula I've created to replace macro 2.

This is about all for today. (^^)

Thursday, 6 December 2012

Week 8 - 06 Dec 2012 - Thu

37th day at SSMC.

Today, I was working on using formula to determine whether the data is automotive or non-automotive part. So I started off checking and reading that particular macro programming to see how to differentiate between automotive and non-automotive parts.

Firstly, I tried several formula that allow me to compare certain criteria and some formula that I had used before like 'COUNTIFS' and 'SUMIFS' but both formula cannot be used in this case as they don't display text even though they allow several criteria to be set.

Thus, I turned to other formula like 'IF' and also read and searched through the Excel Help function on several other formula like 'SEARCH' and 'REPLACE'. And also learnt of how to use these formula in combination.

My task was not just determining the automotive and non-automotive part, I have to display the text as well.

The criteria in determining the automotive parts are:

1. The part name contains 'LZ'.
2. There is a list of partID that does not contain 'LZ' but are still considered as automotive part. So I have to matched against the list.

And I have done 2 different formula to differentiate automotive parts from non-automotive ones for each of the criteria mentioned above.

1. =IFERROR((REPLACE(C3,1,SEARCH(Y1,C3)+2,"Auto")),"Non-Auto")
This formula searches for 'LZ' in each part name and replace that part name with 'Auto'. However, if the search failed, #Value will be displayed. Thus, IFERROR is required to display 'Non-Auto' for every #Value.

2. =IF(T2=Sheet3!A$3,"Auto",IF(T2=Sheet3!A$4,"Auto",IF(T2=Sheet3!A$5,"Auto",IF(T2=Sheet3!A$6,"Auto",IF(T2=Sheet3!A$7,"Auto",IF(T2=Sheet3!A$8,"Auto",IF(T2=Sheet3!A$9,"Auto",IF(T2=Sheet3!A$10,"Auto",IF(T2=Sheet3!A$11,"Auto",IF(T2=Sheet3!A$12,"Auto",IF(T2=Sheet3!A$13,"Auto",IF(T2=Sheet3!A$14,"Auto",IF(T2=Sheet3!A$15,"Auto",IF(T2=Sheet3!A$16,"Auto",IF(T2=Sheet3!A$17,"Auto",IF(T2=Sheet3!A$18,"Auto",IF(T2=Sheet3!A$19,"Auto",IF(T2=Sheet3!A$20,"Auto",IF(T2=Sheet3!A$21,"Auto",IF(U2=Sheet3!A$22,"Auto",IF(U2=Sheet3!A$23,"Auto",IF(U2=Sheet3!A$24,"Auto",IF(U2=Sheet3!A$25,"Auto",IF(U2=Sheet3!A$26,"Auto","Non-Auto"))))))))))))))))))))))))

In this formula,
T2 : First 6 characters of part name
U2 : First 7 characters of part name
Sheet3!A3:A26 : List of automotive part names that does not contain 'LZ'

Therefore, I need to compare T2 and U2 against Sheet3!A3:A26. If there's a match to the list, 'Auto' will be displayed else, 'Non-Auto' will be displayed.

Eventually, I have combined the 2 formula using the 'IF' and 'OR' functions to be fully successful in determining automotive and non-automotive parts.

I was having trouble combining the 2 formula and kept having errors. I guess I've got confused due to too many brackets. But still, I had managed to work it out! (^^)

The finally formula is :
=IF(OR(IFERROR((REPLACE(C3,1,SEARCH(Y1,C3)+2,"Auto")),"Non-Auto")="Auto",IF(T2=Sheet3!A$3,"Auto",IF(T2=Sheet3!A$4,"Auto",IF(T2=Sheet3!A$5,"Auto",IF(T2=Sheet3!A$6,"Auto",IF(T2=Sheet3!A$7,"Auto",IF(T2=Sheet3!A$8,"Auto",IF(T2=Sheet3!A$9,"Auto",IF(T2=Sheet3!A$10,"Auto",IF(T2=Sheet3!A$11,"Auto",IF(T2=Sheet3!A$12,"Auto",IF(T2=Sheet3!A$13,"Auto",IF(T2=Sheet3!A$14,"Auto",IF(T2=Sheet3!A$15,"Auto",IF(T2=Sheet3!A$16,"Auto",IF(T2=Sheet3!A$17,"Auto",IF(T2=Sheet3!A$18,"Auto",IF(T2=Sheet3!A$19,"Auto",IF(T2=Sheet3!A$20,"Auto",IF(T2=Sheet3!A$21,"Auto",IF(U2=Sheet3!A$22,"Auto",IF(U2=Sheet3!A$23,"Auto",IF(U2=Sheet3!A$24,"Auto",IF(U2=Sheet3!A$25,"Auto",IF(U2=Sheet3!A$26,"Auto","Non-Auto"))))))))))))))))))))))))="Auto"),"Auto","Non-Auto")

After lunch. I continued to do similar task:

- The second formula was to match if the data is automotive part and if the customer name matches with the list of customer code.
- For the third formula, it was harder as I do not know what to compare to for the data to be categorize as sample lot. Even after reading the macro programming, I was still not sure. I couldn't find out what does '=IF(C[-17]>12,1,0). I couldn't understand and find out what is C[-17] even after comparing to other macro programming. I had only know that it should be referring to certain column. So, I tried to look for past excel file data. And I had finally found out that sample lot is actually determine by the quantity column. When the quantity is more than 12, it is considered as a sample lot, on the other hand, when quantity is less than 12, it is not considered as a sample lot.

Had a tiring day today. Time to sleep. (^^)


Wednesday, 5 December 2012

Week 8 - 05 Dec 2012 - Wed

36th day at SSMC.

Today, I was editing a macro programming that is used for updating the charts in the excel file. This particular macro was created to retrieve data from another 3 spreadsheets and the data retrieved includes the defect type, defect count and the ppm according to a given week.

The original macro takes 15 sec to complete its job. So I had tried to reduce the waiting time or even, if possible, replace with formula.

The original macro had the following steps:

1. Copy defect type
2. Match week no.
3. Copy defect count and ppm of the matched week no.
4. Sort defect type according to the largest count and ppm
5. Keep top 8 defect types and delete the rest

What I have in mind and hope to achieve is to reduce the waiting time, so the steps are shorter.

1. Match week no.
2. Sort defect type according to the largest count and ppm of the matched week no.
3. Copy only top 8 defect types and their count and ppm.

However, things doesn't goes smoothly like we always thought they would be. It is not easy to write the macro programming language even though I am just editing from one. I kept having errors when compiling and I did not know how to resolve them.

As a result, like always, whenever I'm stuck at one thing and couldn't solve it after trying for quite awhile, I will move on to another issue.

And I really want to thank my friend, Ting Min, this time. During lunch time, she told me to relax when I was feeling vexed and said that I will always solve something in the end of the day.

Haha. I don't know why but I really managed to solve another problem that I had left off last week. I was so happy. (^^)

I was having problem last week on the macro that extracts data from a text file (.TXT) and insert into excel. It also automatically insert new column of data. Today, I had managed to improve the macro programming on the way it extract and insert data into excel and also replace the part where it insert new columns of data with formula. So, the overall execution time of the macro is shortened

The whole of today had past slowly but at least I had achieved something before the end of today. It's some kind of encouragement? (^^)

Tuesday, 4 December 2012

Week 8 - 04 Dec 2012 - Tue

35th day at SSMC.

Today, I have improved yesterday's 'TRANSPOSE' formula. Instead of just transposing the data, I have included the defect types as well. This is done in case any defect type is being deleted or added.

I have also linked the spreadsheets' cells together so when data is being entered into 1 spreadsheet, another spreadsheet will be updated instantly. This is kind of real time basis and it also eliminate the use of macro which is quite time consuming.

Another job done today was to replace a macro, responsible for inserting new columns of data, using formula. I found out that the 3 new columns of data can be done with formula as I realized that they are linked to the part name.

The last task for today was to find a way to paste transposed value using formula. I have to paste the transposed data as value and not the whole formula itself. However, no solution was found. >.<

And so, I'm back to discovering how the macro programming language works. -.-

Monday, 3 December 2012

Week 8 - 03 Dec 2012 - Mon

34th day at SSMC.

Today, I had done a more detailed mind map and a breakdown of the macros' functions as a start off for today. I have also stated down which macro or part of a macro I had replaced with formula.

However, here's 1 constraint that I have found out after starting this task regarding formula. When using formula, there will be a reference cell or range. So, my concern is how to keep the calculated value if the reference cell's or cells' data will be changed.

Anyway, today I was trying to solve one of the macro's function. This macro is used to copy and paste data from one excel spreadsheet into another spreadsheet. Not just that the data quantity is quite a lot, the data is also updated weekly. I guess that's why they have chosen to used macro for this action.

I was trying to replace this macro's function with the 'IF' and 'SUMIFS' formula as there were many criteria, for example, data from spreadsheet 1 was

and to be paste into spreadsheet 2 in this format
So, the formula cannot be pull down or left, right and I have to edit the formula for every cell. This is too time consuming and too many steps and conclusion, troublesome. 

Towards the end of today, I found out the 'TRANSPOSE' function and discovered how to apply it into the excel spreadsheet. It made the whole job to be done easily and I only have to set the formula 2 times for each spreadsheet. 

I can't describe how happy and excited I was when I found out the 'TRANSPOSE' formula works for the data. (^^)

That's about all for today.