努力可视化如何执行以下操作,这是一个单元格公式中计算出的列表的最小值。假设我有一个数据表,名为Sheet1
:
AAPL, TSCO, APPl 2D diff, APPL 3D diff, TSCO 2D diff, TSCO 3D diff,
10, 20, , ,,,
11, 19, , ,,,
11, 21, =(A4/A2)-1, , =(B4/B2)-1
12, 23, =(A5/A3)-1, =(A5/A2)-1, =(B5/B3)-1, =(B5/B2)-1,
13, 21, =(A6/A4)-1, =(A6/A3)-1, =(B6/B4)-1, =(B6/B3)-1,
因此很容易将这些公式向下拖动(以百分比表示)。我有两者的时间序列,如果我有1个AAPL和1个TSCO,则可以分享其完美时机。然后,我想要的只是2D差异的最小值和3D差异的最小值,可通过=MIN(C:C)
或=MIN(D:D)
但是,可以说我想这样改变权重(Sheet2
)。因此,我必须回到sheet1
,然后权衡2d差和3d差,每次都改变权重,即如果我们对2D差取第一权重5 + 100,我必须做一个第七列使用公式=5*C4+100*D4
,然后必须键入=MIN(G:G)
才能找到它,这是我可以在一个单元格中完成此操作的一种方法吗?
AAPL Weight, TSCO Weight, min 2D diff, min 3d diff
5,100,,
50,70,,
80,75,,
然后针对该表中的每个不同的权重,我现在手动进行操作。有没有办法我可以校准
答案 0 :(得分:0)
将Sheet1
更改为Sheet2
。我用所述加权公式预先准备了列,然后只是更改了每个赛尔的加权。以下代码ID对我有用:
Sub Cycle_Through_Weights()
Dim i As Integer
For i = 4 To 23:
Sheets("Sheet4").Select
Range("A" & i & ":B" & i).Select
Selection.Copy
Sheets("Sheet3").Select
Range("E3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E4").Select
Application.CutCopyMode = False
ActiveSheet.Calculate
ActiveSheet.Calculate
Sheets("Sheet4").Select
Range("A" & i & ":B" & i).Select
Selection.Copy
Sheets("Sheet3").Select
Range("W2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Sheets("Sheet3").Select
ActiveSheet.Calculate
ActiveSheet.Calculate
Sheets("Sheet3").Select
Range("X7:Y7").Select
Selection.Copy
Sheets("Sheet4").Select
Range("C" & i).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("C" & i).Select
Application.CutCopyMode = False
Next i
End Sub