Mr.Excel Members
with hello and regard
i have Column A and B of this table. Column A code are commodity codes and column B are countries that import this commodities (my data are in 325678 rows and i am working with excel 2007):
<table style="border-collapse: collapse; width: 303pt;" border="0" cellpadding="0" cellspacing="0" width="404"><col style="width: 41pt;" width="55"> <col style="width: 23pt;" width="30"> <col style="width: 39pt;" width="52"> <col style="width: 41pt;" width="55"> <col style="width: 159pt;" width="212"> <tbody><tr style="height: 15pt;" height="20"> <td class="xl67" style="height: 15pt; width: 41pt;" align="center" height="20" width="55">A</td> <td class="xl67" style="border-left: medium none; width: 23pt;" align="center" width="30">B</td> <td class="xl67" style="border-left: medium none; width: 39pt;" align="center" width="52">C</td> <td class="xl67" style="border-left: medium none; width: 41pt;" align="center" width="55">D</td> <td class="xl67" style="border-left: medium none; width: 159pt;" align="center" width="212">E</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl68" style="height: 15pt; border-top: medium none;" align="center" height="20">8-digit</td> <td class="xl68" style="border-top: medium none; border-left: medium none;" align="center">iso</td> <td class="xl68" style="border-top: medium none; border-left: medium none;" align="center">6-digit</td> <td class="xl68" style="border-top: medium none; border-left: medium none;" align="center">unique</td> <td class="xl68" style="border-top: medium none; border-left: medium none;" align="center">Number of different countries</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01041000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">ARE</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010410</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010410</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">1</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">AFG</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">4</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042010</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">AFG</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040130</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">1</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042020</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">QAT</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040310</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">1</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042030</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">IRQ</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040630</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">1</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042040</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">KWT</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">3</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04013000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">TJK</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040130</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">4</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04031090</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">USA</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04063000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">SAU</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040630</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04069000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">CIV</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04069010</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">PAK</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04069020</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">GBR</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04069070</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">CIV</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">06031040</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">KAZ</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">06031060</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">RUS</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">06031070</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">UKR</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">06031080</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">TWN</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> </tbody></table>
i want a macro that reproduce columns C, D and E:
column C = left(A,2)
column D = unique list of C
column E = number of different countries in column B for each column D codes
note: similar codes in column C may have similar or different countries in column B
thanks a lot
aminexcel
with hello and regard
i have Column A and B of this table. Column A code are commodity codes and column B are countries that import this commodities (my data are in 325678 rows and i am working with excel 2007):
<table style="border-collapse: collapse; width: 303pt;" border="0" cellpadding="0" cellspacing="0" width="404"><col style="width: 41pt;" width="55"> <col style="width: 23pt;" width="30"> <col style="width: 39pt;" width="52"> <col style="width: 41pt;" width="55"> <col style="width: 159pt;" width="212"> <tbody><tr style="height: 15pt;" height="20"> <td class="xl67" style="height: 15pt; width: 41pt;" align="center" height="20" width="55">A</td> <td class="xl67" style="border-left: medium none; width: 23pt;" align="center" width="30">B</td> <td class="xl67" style="border-left: medium none; width: 39pt;" align="center" width="52">C</td> <td class="xl67" style="border-left: medium none; width: 41pt;" align="center" width="55">D</td> <td class="xl67" style="border-left: medium none; width: 159pt;" align="center" width="212">E</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl68" style="height: 15pt; border-top: medium none;" align="center" height="20">8-digit</td> <td class="xl68" style="border-top: medium none; border-left: medium none;" align="center">iso</td> <td class="xl68" style="border-top: medium none; border-left: medium none;" align="center">6-digit</td> <td class="xl68" style="border-top: medium none; border-left: medium none;" align="center">unique</td> <td class="xl68" style="border-top: medium none; border-left: medium none;" align="center">Number of different countries</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01041000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">ARE</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010410</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010410</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">1</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">AFG</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">4</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042010</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">AFG</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040130</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">1</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042020</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">QAT</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040310</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">1</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042030</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">IRQ</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040630</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">1</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">01042040</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">KWT</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">010420</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">3</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04013000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">TJK</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040130</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl69" style="border-top: medium none; border-left: medium none;" align="center">4</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04031090</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">USA</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04063000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">SAU</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040630</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04069000</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">CIV</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04069010</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">PAK</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04069020</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">GBR</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">04069070</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">CIV</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">040690</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">06031040</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">KAZ</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">06031060</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">RUS</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">06031070</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">UKR</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> <tr style="height: 15pt;" height="20"> <td class="xl66" style="height: 15pt; border-top: medium none;" align="center" height="20">06031080</td> <td class="xl66" style="border-top: medium none; border-left: medium none;" align="center">TWN</td> <td class="xl65" style="border-top: medium none; border-left: medium none;" align="center">060310</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> <td class="xl70" style="border-top: medium none; border-left: medium none;" align="center">
</td> </tr> </tbody></table>
i want a macro that reproduce columns C, D and E:
column C = left(A,2)
column D = unique list of C
column E = number of different countries in column B for each column D codes
note: similar codes in column C may have similar or different countries in column B
thanks a lot
aminexcel
Last edited: