Thanks a lot, Scott_Mitchell! I learnt many new things from your code, but I am not sure if I fully understood how it works in some parts. As far as I figured, you first construct a hash table of names from the list dataset, and then match these names in the line1 varibale from have dataset. However, I am not sure what is the purpose of the " DO WHILE" loop that comes afterwards, and I am not sure what is this condition testing for: IF TRIM(SUBSTR(VNAME(_COUNT{I}),6,1)) = TRIM(SUBSTR(NAMESLIST,1,1)) THEN DO; And, finally, I ran the exact code, and this is the final table that I am getting: ( I have omitted the other COUNT ARRAYS which are all missing) NAMESLIST LINE1 RC countB countG countH GARRY HHHHHHHHHHHHGEORGEGARRY 160038 . 2 . GARRY 5646546465HARRYGARRYBARRY 160038 1 1 1 So, can you please desribe what does this RC and these counters are telling me? and why we can not see GEORGE in the nameslist? Thank you so so much, shayan
... View more