使用动态“<”或“>”来自VBA If语句中的单元格结果

时间:2018-02-20 02:34:31

标签: excel vba excel-vba

我对VBA这个奇妙的世界很陌生,希望在我去(更多)疯狂之前对我的查询有任何指示......如果这是一个新的查询,请道歉......

简而言之,我在excel中使用 CELL 公式来确定是否“<”或“>”在 VBA IF语句中需要使用符号作为我创建的非常大的算法的一部分,根据每边的线方程绘制几何图案。

“<”或“>” part确定插入的形状是否在绘图区域内,可以是任何形状和大小。

这是我坚持的部分:

GreaterORLess =表格(“形状”)。范围(“L4”)。值'(将为“<”或“> ;“导致此单元格” LeftPos = LeftD +((L + G)* CountL)'正在插入的矩形的左上角位置
LineEq =(Sty - B)/ m '边界线的角度,以确定LeftPos是否为<或者>比

If LeftPos ***[GreaterORLess]*** LineEq Then

    ActiveSheet.Shapes.AddShape(msoShapeRectangle, LeftD + ((l + g) * CountL), topd + (CountW * (W + g)), l, W).Select

End If

我想你可以像VBA那样看待这个if语句需要连接“<”或“>”在IF语句中,然后评估??? Arrgghh这让我发疯了!

对此的任何帮助都将非常感谢!

谢谢:)

1 个答案:

答案 0 :(得分:4)

GreaterORLess = Sheets("shape").Range("L4").value '(will either be a "<" or ">" result in this cell) 

LeftPos = LeftD + ((L + G) * CountL) 'Top Left position of rectangle being inserted

LineEq = (Sty - B) / m ' angle of boundary line to determine if LeftPos is < or > than

If (GreaterORLess = ">" And LeftPos > LineEq) Or  
   (GreaterORLess = "<" And LeftPos < LineEq) Then

    ActiveSheet.Shapes.AddShape(msoShapeRectangle, _
                      LeftD + ((l + g) * CountL), _
                      topd + (CountW * (W + g)), l, W).Select

End If