我有一个非常宏观的挑战,并且假设我的问题最好使用宏而不是公式来解决。
我在Excel工作表中设置了订单项记录。每条记录都包含以下字段:
订单号,产品编号,价格,数量,延长价格,订单总数。
每个订单号可以有一到十个记录(使这个问题更难)。此外,同一订单号的每条记录也将具有相同的order total
。目前,price
和extended price
不是美元,而order total
是。我的目标是使用price
( 以美元为单位)将extended price
和order total
转换为美元。
对于每个订单号的每个集合或记录,我想要取order total
(我可以从任何一个集合中获取),除以extended price
的总和,以及然后将每个extended price
和price
乘以该集合。将这些转换为美元。
答案 0 :(得分:0)
可以使用公式。假设Order Number
是ColumnA中的标签,其他数据来自那里,在H2中并向下复制以适应:
=SUMIF(A:A,A2,E:E)
应以非美国货币的订单号返回延长价格。
在I2中并向下复制以适应:
=F2/H2
应该返回适当的转换因子。
由于这是计算的,因此使用Paste Special ...,Values将ColumnI复制到ColumnJ。
复制ColumnJ,选择C和E列(price
和extended price
)并使用“操作乘法”选择“粘贴特殊...”。
答案 1 :(得分:0)
可能这段代码会有所帮助: 如果要使用宏执行确切的货币转换操作, 试试这样的样本:
Sub conversion()
Dim a, b As Long
b = 50.55
a = ThisWorkbook.Sheets("Sheet1").Range("D1").Value
b = a / 50.55
ThisWorkbook.Sheets("Sheet1").Range("F1").Value = "$" & b
End Sub
这里a是价格和延长价格的总和,b是转换后的美元价值。 否则,如果您想单独更改格式,可以使用excel中的格式单元格选项