我的 VBA 之旅大约有 2 个月的时间,我遇到了一个我无法在线找到解决方案的问题。我在将 Excel 表格操作为另一种格式时遇到问题,这种格式是由我编写的另一个宏创建的。我有一张表格,上面有国家和不同行上的人物名称,列在几行上。我希望它是动态的,因为这张表每天都会更新
我在下面写了我希望它的外观。我的想法是将国家编码为数字,然后删除国家区域中的重复项。
我试图创建一个循环,我想我可能必须为每个国家/地区创建一个范围。
Sub ManipulateTable()
Dim Country as String
Dim USA as Range
Dim EU as Range
Dim India as Range
Const StartRow As Byte = 7
Dim LastRow as Long
LastRow = Range("A" & StartRow.(End(xlDown).Row
For i StartRow to LastRow
Country = Range("A" & i).Value
If Country = "USA" Then Range("C" & i).value = 1
If Country = "EU" Then Range("C" & i).value = 2
If Country = "India" Then Range("C" & i).value = 3
Next i
' This to remove duplicates from column a
Range("A7:A30").RemoveDuplicates Columns:=Array(1). Header:= xlYes
' I thinking that I need to create a loop here
' But I dont know where to start
For i StartRow to LastRow
Countryindex = Range("C").Value
If Countryindex = 1 Then put under USA
If Countryindex = 2 Then put under EU
我的表看起来像这样,有单独的列
"A" "B"
Data
1 USA Sales
2 USA Employment Figures
3 USA Tax
4 EU Sales
5 EU Employment Figures
6 India Sales
7 India Expenses
8 India Employment Figures
我想要一张看起来像这样的桌子
"A"
Data
1 USA: (With some color)
2 Sales
3 Employment
4 Tax
5 EU: (With some color)
6 Sales
7 Employment
8 India: (With some color)
9 Sales
10 Expenses
11 Employment
所有帮助都受到高度评价。
Country Data Time
Country:
Data Time